- Today
- Total
코기판
세탁을 마친 빨래를 건조기로 옮기려고 하니 먼지 필터를 청소하라는 알람이 뜬다. 오랫동안 청소 하지 않아 많이 쌓인 먼지들을 빼고 나니 이번에는 "건조기 필터가 올바르게 끼워져 있는지 확인하세요." 라고 알람이 울린다. 제대로 낀 게 맞는 것 같은데, 신경을 거슬리는 알림음이 삐빅- 삐빅- 울린다. 마음이 바빠진다. 공부를 하고 있던 배우자가 "왜? 뭐가 잘못됐어?" 라며 다가왔다. 괴롭히고 싶지 않은 마음 반, 스스로 해결하고 싶은 마음 반으로 "아니야, 내가 해결할게." 라고 대답해본다. 그렇지만 배우자는 내가 영 못미더운지 책상에서 엉덩이를 떼고 베란다 쪽으로 오고야 만다. 재촉당하는 기분이 든 나는 갑자기 짜증이 나서 날 선 말을 뱉는다. "내가 한다니까?!" 인터넷으로도 여러 차례 방법을 찾아보..
나에게는 조금 특이한 버릇이 있다. 하기 싫지만 해야 하는 무언가를 해야 할 때, 박수를 짝! 한번 치고 일을 시작하는 것이다. 특히 설거지 하기 전, 청소하기 전에 박수를 한 번 짝! 쳐주면 왠지 당장 무슨 일이든 해야 할 것 같은 기분이 든다. 언제부터 시작되었는지 모르겠지만 어느 순간부터 루틴이 되었다. 박수를 치고 시작하는 일이 점점 이전보다 많아지는 것 같다. 요즘처럼 영 기운도 없고 뭔가를 할 마음도 들지 않을 때, 그저 침대에 딱 붙어서 일어나지 않는 경우가 대부분이다. 머릿 속으로는 생산적인 것을 해야 한다는 생각이 들지만 영 내키지 않는다. 오늘도 아무 것도 하고 싶지 않아 가벼운 소설을 하나 읽었다. 소설은 재미있었지만, 소설을 읽다 보니 내가 끄적이는 문장들은 영 초라해 보여 울적한 ..
Problem : https://leetcode.com/problems/running-sum-of-1d-array/ Running Sum of 1d Array - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com My solution : class Solution: def runningSum(self, A): ans = [A[0]] * len(A) for idx in range(1, len(A)): ans[idx] = ans[idx - 1] + A[idx] retu..
Problem Link : https://leetcode.com/problems/transpose-matrix/ Transpose Matrix - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com My Solution : class Solution: def transpose(self, matrix: List[List[int]]) -> List[List[int]]: m = len(matrix) n = len(matrix[0]) new_mat = [] for y_idx..
Background Jmeter? Locust? 1. 코드로 TC 관리 가능 2. Use Less Resources Tips for Using Locust 1. RPS is quite consistent 2. Test boundary 3. Master-slave 구조의 필요성 4. test client 위치 5. Get Hints From Fail Conclusion Background 드디어 회사에서 개발하고 있는 서비스가 성능 검증을 받아야 하는 시기가 도래했습니다. 이전에는 기능에 대한 테스팅만을 진행하다 처음 성능 테스트를 하는 것입니다. 그렇기 때문에 개발 쪽에서 자체적으로 성능 수치를 제안해야 할 뿐 아니라, 성능에 대한 데이터 확보가 중요하게 되었습니다. 성능 측정을 처음 해보는 것이었기 때..
Javascript promise에 대해서 정리해보도록 하겠습니다. 요즘 인프라 업무가 바빠서 js는 손놓고 있다가, 오늘 보안 쪽 친구가 js promise에 대해 물어보길래 샘플 코드와 함께 정리해두면 두고두고 보기 좋을 것 같아 기록을 남겨둡니다. 작년에 ipfs(InterPlanatery File System)과 관련한 과제를 진행한 적이 있었습니다. js code로 device를 제어해야 하는 기능이 있었는데, device의 응답을 기다려야 했기 때문에 시간이 많이 걸리는 기능이 있었습니다. 그래서 이 promise기능을 유용하게 썼던 기억이 있습니다. 저는 처음에 개념을 잘 이해하지 못하고 사용했기 떄문에 많이 헤맸는데요, 부디 이 포스팅을 보시는 분들께서는 저와 같은 시행착오를 겪지 않으시길..
안녕하세요, 오늘은 grpc 번외편으로 grpc load balancing에 대한 이야기를 해볼까 합니다. 최근에 회사에서 이 이슈때문에 많은 삽질을 해서 .. 헤매는 분들께 도움이 될만한 부분이 있을 것 같습니다. 최근에 회사에서 Weave사에서 나온 Scope라는 툴을 붙였는데요, (Scope가 너무 일반명사 같아서 저는 그냥 Weave Scope라고 부릅니다.) 이 Weav Scope라는 툴은, 실시간으로 pod간 연결이나 container 간 연결에 대해 자동으로 지도를 그려주는 역할을 합니다. 즉, network topology를 실시간, 자동적으로 그려주는 모니터링 툴 중 하나입니다. 그런데 막상 이 툴을 붙여보니, frontend와 backend 연결에서 이상한 점이 보였습니다. 어떤 pod..
gRPC를 사용하려고, 가만히 들여다 보면 Protocol Buffers에 대한 이야기가 꼭 빠지지 않고 나옵니다. 줄여서 protobuf라고도 부르고, golang을 사용하다보면 pb라고 극단적으로 줄여서 말하기도 합니다. 스아실.. protobuf가 뭔지 몰라도, 왠지 생긴 것이 json과 왠지 비슷하기 때문에 그냥 대충 감으로 써도 gRPC 샘플을 만들어 보는데 무리가 없기는 하지만, 모든 것들이 다 그러하듯 조금 더 practical하게 쓰려고 하면 막히는 부분이 있어서 protobuf에 대해서 공부하는 느낌으로 한 번 짚고 가려고 합니다. 그래서, 이번 포스팅에서는 * protobuf가 무엇인지, 그리고 장점은 무엇인지 * protobuf 작성 가이드 * gRPC를 사용하기 위해서는 어떻게 해야..