본문 바로가기

반응형

전체 글

(645)
정교분리부터 학폭 논란까지: 한국 사회, ‘공적 윤리’의 경계를 다시 세우다 최근 대한민국 사회는 종교, 정치, 스포츠 등 분야를 막론하고 '공적 영역의 윤리'에 대한 엄격한 잣대를 들이대고 있습니다. 권력을 가진 단체의 법적 책임은 물론, 공인이나 공직을 앞둔 이들의 도덕적 행위까지 예외 없이 심판대에 오르고 있습니다. 특히 통일교를 둘러싼 정치권의 논란과 프로야구 신인 선수의 학교 폭력 인정 결정은 우리 사회가 요구하는 투명성과 책임의 수준이 얼마나 높아졌는지 보여주는 상징적인 사례들입니다.### 1. 종교단체에 대한 사법적 책임 강화: 이재명 대통령의 ‘해산 방안’ 언급최근 가장 주목받는 사안은 종교단체의 정치 개입 및 불법 행위에 대한 강력한 법적 조치 요구입니다. 이재명 대통령은 국무회의에서 종교재단의 정치 개입을 강하게 비판하며 심각한 법률 위반이 있을 시 '해산 방안..
이중화로 인한 네트워크 생각지도 못한 장애. 여러 서비스들이 서비스 안정화를 위하여 어플리케이션을 가동시키는 인스턴스를 동일한 서버가 아닌 여러 서버에 분산해서 관리합니다.1000만원 짜리 장비하나를 사용하는 것보단 200만원짜리 장비 5대를 사용하는게 여러모로 효율적이기 때문이죠.  하지만 이러한 구조도 물리적으로 서버가 한곳에 있어서 불이난다거나, 전기가 꺼진다거나 하는 재난의 상황에서는 서비스들이 중단될 위험이 있습니다. 이러한 상황을 방지하기위해서 서버자체를 하나 더 사용합니다...   GSLB란GSLB(Global Server Load Balancing)는 전 세계 여러 위치에 분산된 서버 간에 트래픽을 분산시키는 기술을 말합니다. 이 기술은 사용자가 어느 위치에서 접속하든 가장 가까운 또는 성능이 가장 좋은 서버로 트래픽을 라우팅해줍니다..
2023년 회고 이글은 너 무슨일해? 하는 물음에 대답하기 위하여...나도 개발자가 맞을까?  카카오에 입사하고 빌링이라는 시스템을 구축하게 된지 몇해가 지나고… PG라는 말을 들어본적이 있는가? PaymentGate 라고 하는데 우리가 쌀국수집에서 쌀국수를 먹고 계산을 하고 영수증을 받으면 이니시스라는 문구를 본적이 있을것이다. 이게 PG다. 즉 카드로 결제하면 그 정보를 가지고있다가 가맹점에게 돈을 주는 시스템이다. 이때 정보를가지고 돈으로 바꿔주는 것을 정산이라고 한다. 그래서 너는 뭐하는데? 돈을 벌수있게 해주는 서비스를 만든다. 서비스를 만들고  돈을 벌기 위해서는 빌링시스템이 필요하다.빌링시스템이란. 내가 컴퓨터로 돈을 벌고싶으면 필요한 시스템인데 한마디로 결제 시스템이다. 홈쇼핑 같은 규모가 작은 업자들의 ..
BPS, PPS, Active - StandBy BPS 초당 처리된 트래픽의 Byte or bit PPS packet per second 초당 처리된 패킷 수 Active - Active 서버 두 대를 모두 운영하는 방식을 active - active라고 부릅니다. 서버 두 대가 모두 활성화(active) 상태라는 개념이기 때문에 이해가 어렵진 않습니다. 두 서버 모두 일을 하다가 한쪽 서버에 문제가 발생하면 나머지 한쪽이 모든 트래픽을 처리합니다. 장애가 발생해도 시스템을 사용할 수 없는 시간인 다운타임(downtime)이 없습니다. 두 서버는 트래픽을 어떤 기준으로 나눠서 처리할까요? 이 질문에 대한 답을 로드밸런싱(load balancing)이라고 하며, L4 스위치 같은 하드웨어 장비가 로드밸런서 역할을 합니다. L4 스위치는 클라이언트로부터 ..
DDD 공부 : 마이크로서비스 마이크로서비스는 모노리스 시스템과 많이 비교된다. 옛날 방식이아닌 다른방식이라 생각하면 좀더 편할것 같다. 모노리스 시스템 - 애플리케이션이 한 덩어리로 구성 - 단일 프로세스 실행 - 한꺼번에 수정, 배포되어야 함 - 하나가 실패하면 모두 실패됨을 의미 당연한 이야기이지만 이러한 구조는 스케일 아웃을 하고싶어도 전체를 확장해야하는 이슈가 따른다. 예를들어 많은 기능중에 구매에대한 기능이 스케일아웃이 필요하다해도 모든 기능들에 대해서 확장을 해야한다. (효율적이지 못하다, 돈만 많으면 상관없다.) 마이크로서비스 - 서비스는 각기 독립적인 기능을 제공 - 서비스가 사용하는 저장소는 다른 서비스와 완벽히 격리됨 - 따라서 독립적으로 수정 가능하며 별도 배포 ,확장 가능 - 하나의 서비스 실패는 전체 실패가 ..
소프트웨어 장인정신 소프트웨어 장인 정신이란 무엇인가? 주니어개발자로서 앞으로 어떤식으로 업무를 임해야하는가? 해당 책은 TDD에 중요성에 대해서 언급하고있다. 간단하게 3~4시간 정도에 읽을 수 있는 내용이다. 기술적으로보단 프로그래머의 직업을 통해서 어떠한 마음가짐으로 일을 해왔고 그 성과에 대해서 초점을 맞춘다. 단순히 개발자로서의 기술이 궁금하다 테크닉이 무엇인가 이러한 내용보다는 마음가짐에 대해서 말하고 있다. 단순히 시간만 때우다 집에 가는 개발자가 될것이냐. 정말 개발을 좋아하고 그것을 자아성찰의 단계를 넘어서 시너지를 내는 방법에 대해서 설명한다. 글 내용중에 감명받았던거는 필자가 개발리더인 시절 PM과 업무적 다툼이 있던 단계에서 나온다. 사실 운영툴이니 개발 언어에 대해서는 개발자가 선택하는게 맞는데 그것..
리트코드: Longest Palindromic Substring /** * @param {number[]} nums1 * @param {number[]} nums2 * @return {number} */ var findMedianSortedArrays = function(nums1, nums2) { return medianValue(nums1, nums2); }; const medianValue = (nums1, nums2) => { const len = nums1.length + nums2.length; const median = parseInt(len / 2); let index = -1; let i = 0; let j = 0; let tmp = 0; let result = 0; while(true) { if( len % 2 == 1 && index == medi..
리트코드: Median of Two Sorted Arrays 투포인터 문제이다. 중복이없는 가장 긴 문자열을 찾는 문제. 문자열주고 가장긴? 이런거나오면 그냥 투포인터생각하면 쉽다. /** * @param {string} s * @return {number} */ var lengthOfLongestSubstring = function(s) { const array = new Array(200,false); const len = s.length; let front = 0; let rear = 0; let result = 0; let sum = 0; while(true) { const target = s.charCodeAt(rear); result = result > sum ? result : sum; if(rear == len||front> rear) break; ..

반응형