UNIX 유닉스의 탄생

그냥 옛날이야기나 써 있을 줄 알았는데
기술서적이었다

유닉스 계열을 많이 경험 해 보지 않은 사람이 보면 대부분 내용은 그냥 넘어가야 하지 않을까
awk, sed, grep, … 을 한 번도 써 보지 않았다면 내용에 몰입하기 힘들 것 같다.

자주 사용하던 기술들이 어떻게 만들어졌고 왜 생겼는지를 알게 되는것으로도
기술을 이해하는데 도움이 되니
유닉스계열(리눅스)를 자주 사용하는 사람이라면 한번 보면 좋을 것 같다

미국의 벨 연구소

kt연구소랑 비슷한 분위기일 것 같다
독점기업의 지원금에 돈 걱정없고
빡빡한 듯 하지만 자유롭고
연구 좀 실패해도 아무도 뭐라 안 하고

KT연구소도 좀

Tinker Edge T 구매후기

Tinker Edge T

미니컴퓨터?? 중에서 Edge 머신러닝에 특화된 디바이스
로봇같은데다 달아놓고 쓰는용도.. 일듯?

구글 coral edge tpu 계열의 보드
https://github.com/google-coral/edgetpu
카메라 등등도 이쪽에 호환

최근 유행하는 로컬배달, 매장배달 로봇 개발 및 테스트에 사용될 수 있을까
– NAVERLABS, 배민, 트위니(유튜브 이과장 채널에서 봤었는데대전에 있는 회사..) 등등 여기저기서 만들고 있다.

이 기술이 자율주행 배송의 endpoint가 될건데
기술개발이 다른부분에 비해 쉽고 결과물이 몇년안에 나올 수 있을 것 같다.
자율주행 및 로봇기술을 검증하기 유용한 분야

NAVERLABS는 로봇의 모든 동작 데이터를 5G로 클라우드로 보낸다는 것 같은데… 세부적인 전략은 모르겠지만…. 아예 네이버클라우드로 보내는건 아니고 Edge 처리장비를 사용하겠지??
아니면 설계를 다시 해야될거고
어쨌든 확실한건 각각의 로봇에는 처리장치가 없는 것 같다. 있다면 TinkerEdge정도가 들어가면 되려나… 로봇당 단가가 30만원이 올라가는건 좀 무리이려나
이렇게 개발 로봇에 처리장치가 없는걸 뭐라고 했는데…. 대가리스(헤드리스)?

TinkerEdgeT로 얼마만큼의 데이터를 처리할 수 있을지는 안써봐서 모르겠고
CCTV관제 정도는 가능할 것 같다. 카메라를 사서 테스트 해 볼 예정

설치방법

링크들

  • https://www.asus.com/Networking-IoT-Servers/AIoT-Industrial-Solution/All-series/Tinker-Edge-T/
  • https://www.asus.com/Networking-IoT-Servers/AIoT-Industrial-Solution/All-series/Tinker-Edge-T/HelpDesk_Download/
  • https://github.com/TinkerEdgeT

기본설치순서

메뉴얼 PDF에 나오는대로 하면 되는데
옛날 안드로이드 연결할 때 했던 삽질을 또 해버렸다.
윈도우 업데이트를 해 줘야한다는것.. 드라이버 선택해서 설치 안해주면 안깔린다.

  1. https://dlcdnets.asus.com/pub/ASUS/mb/Embedded_IPC/Tinker_Edge_T/Tinker_Edge_T-Mendel-Day-V2.0.2-20200701.zip
  2. 스윗치 설정 기본값 – OXXX
  3. USBC연결
  4. HDMI연결
  5. 키보드 연결
  6. 마우스 연결
  7. 랜선연결
  8. 전원연결 노트북용 45w, 15~19v,
  9. 노트북파워 전원on
  10. 윈도우에서 띠ㅂㄹ 소리
  11. 윈도우 업데이트 – 선택적 업데이트 ASUS,Tinker 어쩌고 한거 설치
  12. flash.cmd 실행

설치하고 나면 HDMI에 화면이 표시되는데…
로딩이 끝나고
터미널 실행시키는 기능밖에 없는 좆같은 화면이 뜨는데…
키보드로 터미널을 실행시킬 수 없다
남는 마우스가 있어서 다행이다
남는 키보드도 필요하다

Mendel GNU/Linux – debian 계열

sudo apt update && sudo apt upgrade -y

8기가 플래시가 달려서 나온다
아무것도 못할 용량이라 micro-sd 카드를 추가 해 줘야할 것 같은데
속도문제는 어떨지 모르겠다

sudo shutdown -h now

심화설치순서

  1. $ sudo blkid
  2. $ sudo mkfs.ext4 /dev/mmcblk1p1
  3. $ sudo vi /etc/fstab
  4. /dev/mmcblk1p1 /data ext4 noatime,sync,defaults 0 2
  5. $ sudo mount -a

후기

  • 쉽게 쓰려면 남들이 많이 쓰는 Coral Board 쓰자
  • 아직 OS 설치밖에 안해봐서…

리액트 웹앱 제작 총론 2/e: 리액트와 리덕스를 이용한 웹앱 개발 가이드, 2019

그냥 간단하게 잘 나와있다

jquery, jsp, php, asp 등등 구닥다리 웹프론트 기술을 좀 알고 있고
angular, typesript, express 정도는 조금 만져본 상태의 지식수준에서
볼 때는 대충 넘기면서 한두시간 보면 되는 정도..
요약을 잘 해 놓으면 네다섯페이지도 안되는 분량

리엑트나 웹 프레임웤을 처음 접하는 사람이 볼 수 있을지는 모르겠다
난 이 책을 보기전에 리엑트로 된 어드민사이트를 며칠 살짝 만져보긴 한 상태라서 좀 더 쉬웠는지도 모르겠다.
아예 프로그래밍 초보자라면 따라하고나서 남는거 하나도 없을 듯 하고

2020 소액체당금

IT기업은 잘 망한다.
다른업종에 비해 창업이 쉬워서 좆소기업이 많아서 더 그렇다

그래서 밀린 임금에 대해 소액체당금을 받는 경우가 많은데
몇가지 실수로 인해 체당금을 덜 받게되는 경우가 많아서
이런부분을 잘 알아두는게 좋다

  1. 선급여선지급
    1,2,3,4,5월 급여가 밀리면 1월 급여부터 받아야한다
    체당금은 최종 3개월까지만 보장된다
    그래서 3개월이상 체불되면 즉각퇴사해야한다
    급여 테이블이 높아서 2개월이면 이미 오버하는 경우가 많겠지만….
  2. 급여700, 퇴직금 300
    여기서 오버되는 부분부터 우선 받는다
  3. 법률구조공단 무료법률상담
    월급400만원 이하만 된다. 거의 초급개발자만 된다는 소리
  4. 연차수당 등 기타비용을 우선 변제받는다
    월급하고 퇴직금만 체당금 대상이라서 기타부분은 먼저 정산해야한다. 안되면 현물이라도..
    체불 2개월 이후부터 연속휴가를 써야한다는 소리다.

한번 받아보니까 이렇게 복잡할 것 같으면
그냥 쓸데없는거 다 없애버리고 고용보험료도 안 내면 좋겠다는 생각이 든다
임금체불 대표는 재산압류하고 그러고도 없으면 못 주는거지 뭐…
2개월치 급여는 공탁을 걸어야 하는 법을 만들던가

프로세스는 잘 기억이 안난다.

고용센터 가서 소액체당금 신청 – 고용주와 체불임금 금액확정 – 법원민사소송 – 판결문 수령 – 고용복지센터에서 처리(판결문, 체불임금확정무슨서류)

TIP1. 모르는거 있을 때 늙은 돌무원보다는 젊은 공무원에게
비 전문적인 내용은 공무원보다 공익에게 물어보는게 더 좋은 답변을 들을 수 있다.

주의1. 법원 접속시 브라우저는 관리자 모드로 보안은 좆까
주의2. 법원 판결문 프린터 출력시 테스트프린트 꼭 해야됨. 프린터 오류나도 출력이 안되도 그냥 뽑은거로 처리됨
주의3. 오류로 재출력시 씨발개똥무원새끼한테 개처럼 빌면서 써줘야 잘 처리해줌
주의4. PDF로 뽑으면 좆같은 미리보기 파일이 칼라로 출력되는데 ‘정본입니다^^’라는 페이지도 출력됨 (속았지?)

서비스 구축시 도메인 구매

그냥 월 비용이 존나게 비싸거나
다른데로 이동하려면 눈탱이 치는 사이트가 있어서 잘 고르는게 좋다.

닷네임과 그 리셀러 서비스는 이전하려면 무슨 좆같은걸 우편으로 보내야된다. 절대로 사용하면 안됨 – 웹티즌 및 기타 등등 이쪽이 리셀러 서스가 많다.

가비아gabia.com, 후이즈whois.co.kr는 너무 비쌈

그 이외는 고려사항도 아니다.

추천

hosting.kr 메가존

국내서비스, 큰 회사고 도메인이 메인 비지니스가 아니라서 그런지 도메인가지고 좆같이 굴지 않는다.
org만 이상하게 다른데보다 조금 더 비싸다

godaddy

한개씩 하면 별로 싸진 않은데 세일하는것만 싸다

gandi.net

해외 사이트라 신문을 감추고 구매할 수 있는 장점

AWS

가격 괜찮은 편이고 AWS에서 같이 관리해서 편함

[도서] 웹서비스 해킹 대작전 – 해킹관련 소프트웨어 목록

http://www.acornpub.co.kr/book/web-hacking

회사에 있어서 봤는데 유치한 제목때문에 별거 아닌 줄 알았는데
흔한 해킹기법이나 신경써야할 부분이 좀 나와있다
옛날에 나온 책이라 그런지 보통 다 아는부분일듯

60년대 프로그램은 엄청 잘만들었는데
70년대는 퍼스널컴퓨터 처음 나오면서 개판레거지가 많다는듯
이후에 비슷한 흐름이긴한데 좀 나아지다가

내 생각엔 21세기 다시 비슷한 양상이 발생하고 있는 것 같다
노드를 필두로한 초보개발언어들이 난립하면서 점점 개판설계 코드가 많아지고 있다
노드쪽은 라이브러리도 초반에 생각없이 설계한게 남아있어서 이상한게 많다

해킹테스트용 소프트웨어 소개

취약점 스캔
nikto: https://cirt.net/Nikto2
wikto: nikto의 GUI https://github.com/sensepost/wikto

Web Scan
Stunnel: https://www.stunnel.org/
black widow: Proxy https://github.com/1N3/BlackWidow
paros: fiddler 유사 https://sourceforge.net/projects/paros/
fiddler: https://www.telerik.com/fiddler
BurpSuite: https://portswigger.net/burp

Gnu
curl: 커맨드라인으로 http 호출시 많이 쓴다고..
wget: 다운로드 recursive 방식 사용도 가능하다는데

SSL
SSL Digger: https://www.owasp.org/index.php/Testing_for_SSL-TLS_(OWASP-CM-001)

카프카 기술서 두권 비교

아파치 카프카로 데이터 스트리밍 애플리케이션 제작 – 에이콘

카프카에 대해서 개괄적으로 나와 있기는 한데 정리가 깔끔하지는 않다

훑어보기는 괜찮다

그런데… 이 책이 더 좋은 것 같다

~~~

기술만 훑어보려고 하는거면 1~2단원만 보면 될 것 같고 자세히 보려면 좀 오래걸릴 것 같다.
코드랑 기술이 상세하게 설명 돼 있어서 더 그런것같은데..

메시지 전송 기술에서 카프카가 거의 표준으로 자리잡아서 다른걸 생각하기가 힘들 정도다
복잡한 라우팅을 하는 경우에 AMQP를 쓴다고는 하지만… AMQP에서 지원되는 케이스를 생각 해 봐도 카프카에서도 다 할 수가 있을 것 같다

예전에 금융사 SMS처리하는 프로젝트에서 사람들 mysql가지고 개삽푸는거 본 적이 있는데
내가 들어갔으면 메시지 서비스로 하지 않았을까 싶은데…
그 때는 rabbitmq를 선택하지 않았을까?? 카프카의 특성을 제대로 모르고 있어서..
당시에는 문서도 잘 안나와있어서 좀 골치아프기도 했다.
요새는 번역서도 나와있어서 사용하기 좋은 것 같다

끝으로 최근.. 아파치에서 카프카의 경쟁 시스템이 출현했다는 슬픈소식

Apache Pulsar

마이크로서비스 아키텍처 구축 대용량 시스템의 효율적인 분산 설계 기법, 한빛미디어

몇달쯤 전에 처음 볼 때는 뭐 당연한걸 책으로 써놨네~ 하면서 대충 훑어보고 말았는데
최근 MSA 관련 작업을 하면서 다시 보게 됐다.

다시 보니까 전에 못 보던 부분도 보이고 전체적인 흐름도 잘 정리되서 좋았다.

MSA 관련기술

DevOps 관련 플로우

  • 빌드시 유닛테스트
  • CI/CD
    • pull request 하면서 유닛테스트
    • 통과시 container build
      – 이미지에 로깅 툴을 넣어서배포
    • stg(staging) 배포
  • 통합테스트(수동?또는자동)
  • prd(production) 배포

예전에 제대로 모르고 넘어간 요소들

API GW(zuul), CircuitBreaker(hystrix), ServiceDiscovery(eureka), ClientLoadbalancer(ribbon)

넷플릭스쪽이 관련 인프라가 잘 돼 있어서 spring쪽 개발자는 그걸 참고하면 편하다.

MSA적용실패사례 – MSA vs Monolith

예전에 O2O 서비스를 만들 때도 SOA를 시도했다가 실패했는데
모놀리스형태로 만들어야 할 규모의 서비스를 무리하게 분할한게 원인이었다.

처음에 사용자별로 서비스를 나눈 것 까지는 좋았다.

  • 사용자ROLE별로 구분된 웹서버
    • 일반사용자
    • 관리자
    • 사장님
  • 인증서버
  • APP api서버

그런데 여기서 일부 기능을 떼서 서비스 지역정보, 메일문자전송, 다국어관리, … 이렇게 넣다보니 일이 너무 많아졌다.

DevOps도 처음 적용해서 여기저기 오류 터지는데 서비스 개발까지 하려니 죽어났다.

MSA 적용 실패요인

인력부족, 기술부족, 자금부족

MSA를 제대로 이해하고 있고 관련기술을 구성할만한 사람이 있어야된다.
연구하면서 진행하려면 서비스 개발 이외에 최소 서너명이 더 있어야 하지 않을까

서비스 변화

MSA는 서비스 목표가 확실해진 이후에 해야되는 것 같다. 전체적인 서비스 구조는 고정 되어 있고 기능을 추가하기 좋다는거지 서비스의 큰 흐름이 변하는 경우에는 절대로 쓰면 안된다.

초기 스타트업은 서비스 하다가 버리고 다시 시작하기도 하고 메인 기능이 막 바뀌고 추가되고 하니까 MSA에 적합하지 않다.

~

개발자라면 한번쯤 보는게 좋을 것 같다.

요즘 대부분 서비스가 MSA화 되어가고 있고 이정도 속도면 10년안에 국가프로젝트도 MSA적용이 일반화될 것 같으니까