9월, 2021의 게시물 표시

전 GitHub CTO, "지난 10년간 가장 큰 아키텍처 실수는 풀 마이크로서비스로 전환한 것" (twitter.com/jasoncwarner)

 geeknews에서 가져온 내용. 원본 링크는 아래에 기재. https://news.hada.io/topic?id=7839 지난 10년간 가장 큰 아키텍처 실수는 풀 마이크로서비스로 전환한 것 "Monolith > apps > services > microservices" 첫째, 이건 규칙은 아니고 내 생각이 그렇다는 것. 대규모 분산 시스템을 구축해 본 사람은 실제로 그대로 작동하지 않으며, 적응해야 한다는 것을 알고 있음 둘째, 단계가 중요함 5-50인 회사라면 그냥 Monolith로 가세요 1만명 회사라면, 위의 모든 것들을 다 가지고 있을 것. 근데 예전과 달라진 생각들을 얘기해보자면.. 먼저 정의(Definition) 부터 monolith - xyz.com apps - abc.xyz.com services - 앱/모노리스를 지원, 핵심 인프라, 핵심 컴플라이언스 기능, 앱팀에서 작성하지 않을 수 있음(인프라에서 유지관리) microserivces - 몇백라인의 코드, 대부분 일회성, 라이브러리 또는 SDK 일수/있어야(could/should) 함 Why ? : 기본적으로 "Speed & Risk" 때문 #1 전체 개발팀이 하나의 빅앱(전체 사이트가 Rails앱 이라고 생각해 볼 것)에서 개발하는게 더 쉬움 #2 성장하면 필수로 가지게 될 분산시스템은, 자체적으로 위험한 수백개의 마이크로서비스 없이도 이미 추론하기가 어려움 #3 완전히 마이크로로 간다면, 무분별한 확장을 처리하기 위해 새로운 개념을 도입해야 함 #4 맞춤형(Bespoke) 인프라 서비스 또는 마이크로서비스는 부채의 극단적 개념임. 코드도 부채이지만 서비스가 그것의 극단적인 버전. 이게 뭘 의미하는지 생각해 볼 것. 레버리지 포인트가 되게 할 것 분산 시스템 엔지니어들은 중복되는걸 싫어하기 때문에 뭔가가 여러데서 이뤄진다면 "이걸 빼내서 마이크로 서비스를 만들자" 라고 생각함 이론적으로는 이게 맞고, 일이십개

맥북 카라비너 영어/한글/일본어 전환하기

이미지
 현재 Intel 맥북과 M1 맥북에서 4종류의 키보드를 사용중이다. HHK RealForce MD770 Keychron K12 마음 가는대로 키보드를 바꿔가며 사용중인데 매번 설정을 바꾸는게 고역이다. 특히 한글/영어/일본어 간의 변환은 스무즈하게 바꿀 수 없다면 타이핑 하는데 꽤나 고역이다. 그래서 카라비너를 이용한 변환키 설정을 기록한다. 기본 컨셉은 일본어 배열 키보드와 영어 배열 키보드에서 간단하게 각 언어 변환이 가능할 것. 일본어 키보드의 경우는 스페이스바 왼쪽의 키를 한번 누르면 영어, 스페이스바 오른쪽의 키를 누르면 일본어, 연속으로 두번 누르면 한글로 바뀌는 설정이고, 영어 배열 키보드에서는 왼쪽쉬프트+스페이스바가 영어, 오른쪽쉬프트+스페이스가 일본어, 오른쪽 커맨드키를 두번 누르면 한글이 되는 설정이다. Keychron K12(영어배열) + Macbook M1 카라비너 설정 / Simple Modificiations   카라비너 설정 / Complex modifications { "title" : "한글전환 커스텀 For M1 " , "rules" : [ { "description" : "영어 키보드 - 좌측Shift+스페이스:영어, 우측Shift+스페이스:히라가나, 우측 커맨드키 더블클릭:한글" , "manipulators" : [ { "type" : "basic" , "from" : { "key_code" : "spacebar" , "modifiers" : { "mandatory" : [