11.24(수)

초록귤·2021년 11월 24일
0

멋사1기

목록 보기
9/19
post-thumbnail

자체 회사 내에서 서비스를 만들기 제안한다면, 비용 계산해야함.
실무에서는 비용산정 필요함 ( NCP(네이버)쓸 확률 가장 높음 )
그 이유?
1. 결제 - 외국결제 까다로워서 한국
2. 스타트업 프로모션을 많이 함.
(정부지원)

대부분 회사

AWS보다 NCP 씀 -> 만약 회사가 AWS쓴다면, 왜 쓰는지 검토 필요함.
스타트업 - NCP지원금 받을 수 있음.

클라우드서비스1

클라우드서비스2

클라우드서비스3

표준 vm(virtual machine) 기준

1C2G=1 Cpu 2 Giga
서버의 장점 - 24시간 켜져있고, 장애 대응 가능(정전)

ex)
100명 -2만원
100000명 - 200만원 x
인프라 구축의 아키텍처 자체가 다름 (부하 분산 구조)
기업에서는 백업장치 존재.

프론트엔드 개발자도 네이버 map api 사용하려면 네이버 클라우드 사용해야함.
구글 api사용하려면 구글 클라우드 사용해야함.

요금

서버 - 백업서버
문제 확인 Nginx - node - mysql
하나씩 올려놓고 부하 증가하는 것 확인

인프라팀에서 rollback해서 서버관리 = 트러블슈팅

로그는 무조건 남기게 되어있음 ( 누가, 어떤 ip 로 접속, 어떤 traffic , 어디로 이동했는지 )
( 누가 언제 무엇을 변경했는지 )

리눅스

공개 sw 로 무료로 이용 가능 .
긴급 상황에서 gui 못씀
하드웨어 <리눅스 커널 <셀 <응용 프로그램
커서 깜빡임 -셀
파워셀(윈도우) ws-> 윈도우에서 리눅스 품었다.
보통 실무에서 데비안, 레드헷 계열임. 명령어 비슷
redhat - 비즈니즈적 커스텀화
debian - 유저 친화적

파이프라인 구축 -git에 올려두고, push되게 동기화되도록 함.
web server : 우리에게 파일을 serving함.

Nginx와 Apache차이

요즘은 apache -> nginx 바꾸는 추세 ( apache가 heavy-> 사용자 요구사항 받아주다보니 )

모듈
event http server upstream -> 시니어작업 ( 홈페이지 퍼포먼스 시스템, 경량화 작업 )=비용과 관련되어 있기 때문에.
주니어-> 시니어 넘어갈 때 배우게 되는 것
시니어는 연차와 상관없다. ( comport zon을 벗어난 사람- 하고싶은 것만 하는 영역 )
결과물 만드는 사람 ( 내가 할 수 없는 것이 포함되어 있을 것 )
ㄴ 안주에서 벗어나서 계속 적극적으로 뭔가를 알아내고, 결과물을 만들어낼 수 있는 사람.

  • 주니어를 못벗어나는 사람도 10년 차도 있다.
    10년차, 20년차 알고리즘 다시 하게 됨.
    개발자 영어. (개발자들이 쓰는 용어 다시 공부)
    인프라(리눅스,AWS 등) - -다시 정리

리눅스

a | b : a를 연채로 b를 실행하겠다.
touch test{3..5}.txt : text3~5 파일 생성
cat text.txt | greb "JavaScript" : text.txt 내용에서 JavaScript 문자열 찾아서 출력
greb: 입력으로 전달된 파일의 내용에서 특정 문자열을 찾고자 할 때 사용하는 명령어. 리눅스에서 가장 많이 사용되는 명령어 중 하나.
; - 앞의 명령어가 실패해도 다음 명령어가 실행
&& - 앞의 명령어가 성공했을 때 다음 명령어가 실행
& - 앞의 명령어를 백그라운드로 돌리고 동시에 뒤의 명령어를 실행
top: 포트 번호와 상태.
q: 빠져나올 수 있음

html , css , js 를 이식해서 붙인 것 - IDE구름 터미널 (실제 터미널이 아님)
보통 컨테이너 ssh 설정에서 작업함. >
ssh 발급 -> 파워쉘(text) 눌러서 붙여넣음 -> pw 입력(안보임-유출되지 않도록)
AWS - 비밀번호 파일로 받아서 넣어야함. IDE 구름 - 복사 붙여넣기.

실무에서 압축파일 갖고와서 풀어서 사용함
unzip 압축파일명

log 밖으로 빼내면 안됨. - 개인정보 문제
zip -r:보통은 디렉토리 전체를 압축하는 경우가 많기 때문에 위 명령어를 사용해서 압축하면 됩니다.
zip -r nahee.zip ./a ./a경로에 zip
tar: 여러 개의 파일을 하나의 파일로 묶어주거나 풀때 사용하는 명령)
나오는 메시지가 다른 이유?
EC2가 달라서 그럴 수도 있다. 버전이 달라서 항상 공통된 것이 나오진 않는다.
apt-get 패키지 예전엔 카이스트,다음으로 추적

alias :별칭 설정

alias 만 치면 설정한 단축키 나온다.
alias <->unalis로 해제 가능

ns = name server : 도메인 명령으로 ip조회

cli에서 바로 서버로 갈 때 사용한다.
해당 이름의 서버 주소 찾을때 사용가능,
마비되었을때, ping 보내서 접속되는지 확인

ping :접속이 되는지

syn flooding didos - 동시 다발적 공격 ( 부하 증가 ) => 서버에서 포트 html 40 htmlx(naver) 443 빼고 막아둠

traceroute: 추적하는 명령어

나의 컴퓨터에서 해당 사이트 ip 까지 추적
*는 숨김처리
데이터 손실의 네트워크 이슈 생겼을 때, 경로 파악 (어디까지가 접속이 되는지, 어디에서 막히는지 )
대기업 - 장비별 ip set이 있음.
mylocation.co.kr 로 아이피 위치추적 가능

which

내가 실행하고자 하는 프로그램의 경로명

fg ,bg

aws에서 명령어로 창을 하나 열 수 없음. 따라서 백그라운드로 다운로드로 돌림.

ifconfig : 네트워크 정보 출력 - 리눅스 계열
ipconfig : 네트워크 정보 출력 - 윈도우 계열

htop : 모니터링 = top ( 기본 설치 안되어 있음)

head 파일명

: 위에서 10줄 출력
head -3 파일명 : 위에서 3줄 출력
tail 파일명 : 아래에서 10줄 출력

head -F file.py
tail -F file.py
#head와 tail에 -F 속성을 추가하면 꺼지지않고 파일변경내용이 실시간으로 갱신된다.

nohup python file.py

데몬 형태로 실행한다. 터미널 세션이 끊겨도 계속 실행됨

nohup python file.py &
-리눅스, 유닉스에서 쉘 스크립트파일을 데몬형태(백그라운드에서 돌리는 것)로 실행시키는 프로그램
+) &: 프로세스를 실행할 때 백그라운드에서 동작하도록 만드는 명령어
+) nohub : 터미널 연결이 끊어져도 실행 멈추지 않음.

백그라운드에서 실행, 터미널 세션이 끊겨도 계속 실행됨 종료없이 백그라운드에서 동작하게 하고싶다면(like Server)해당 명령어사용이 안전

TMI : nohup은 no hang up을 줄인것, 끊지마! 라는뜻.

퍼미션은 항상 755이상이어야 함

curl

서버 테스트용으로 요청날릴때 많이사용함
curl -o index.html http://www.paullab.co.kr
index.html 에 paullab내용 넣음

문제
1. alias ls='ls -a' 별칭 감춰진 폴더도 찾을 수 있게끔
2. unalias ls 별칭해제
3. 윗 방향키 수정
4. tab
5. tree 생성
touch one.txt two.txt 로 2개 만들어주기
mkdir -p a/{b,c}

  1. 화살표키 윗방향 누르고 이전 명령어에서 수정

  2. 자동완성 키 : tab

  3. find . -name '*.txt'

  4. find . -name '*.txt' > result.txt
    8.root@goorm:/workspace/testubuntu# pwd
    /workspace/testubuntu

  5. mv one.txt change.txt

  6. mv change.txt ../b/change.txt
    mv ./a/change.txt ./b해도 됨

    change mode= chmod

    d: directory , - : 비directory
    파일의 종류
    / 소유자 / 그룹 사용자 /기타 사용자
    rwx - ㅇ
    소유자 권한 다 7 그룹 권한 다 7 기타 읽기만 4
    chmod-774 test.txt
    읽기 4 쓰기 2 실행 1
    744
    소유자 권한만 있고, 나머지 권한 없음.
    -rwx------

    실제 서비스 런칭 프로세스

  7. url 구매

  8. https 인증서 발급(무료 인증서 certbot(Let's Encrypt) + linux crontab 특정 주기실행 )

  9. url 구매한 것을 컨테이너에 연결

-AWS는 url https 한번에 구매 가능.

saas 쓰는 이유

  • 코드 재사용. 변수 사용 가능.
    -sass css전처리. css를 만들 수 있는 새로운 언어다.
    {}없음

    scss 쓰는이유가 비슷한데 9시

    지금 우리가 쓰고있는 live saas = 루비 sass
    엄밀하게 사용은 node sass

    환경설정 -


    sass

    _파일이름 형태
    컴파일 하지않겠다 의미!, 하나의 파일로만 컴파일되도록하면 알아서 css로 됨.
    컴파일이란 텍스트 형태로 되어 있는 소스 파일을 기계어 파일로 만드는 과정을 의미
    scss 주석
    // 한 줄 주석 사용가능 but css 변환 시 없어짐.
    /* */ 여러 줄 삭제

    MappingURL

    css로 변환된 파일을 보면 css 파일 밑에 map 파일이 생성되어있다.
    또한, css 파일 내에도 map 주소가 주석 처리되어 있다.

    "&" ampercent : 상위에 있는 부모선택자 가르킴

    css에서 변수? 유지보수를 매우 쉽게

    5000줄 글자크기 마음에 안든다. => css가 아니라 sass 쓰면 줄이기 가능!
    변수를 선언한다는 것은 값을 일일이 고치지 않아도 된다는 의미.
    자주 사용하는 것 (컬러 같은 것 정리해서) 변수로 선언하면 편하다.
    sass는 첫 인덱스 1부터 시작 .
    list.nth(10px 12px 16px, 2); 자식들 중 2번째

    map은 key : value 로 이뤄져 있음.

    변수 scope !global ->실무에서 본 적이 없음..

    비교연산자 : 단위가 일치하지 않으면 에러 발생.
    mixin: 코드 재사용하기 위해 만들어진 기능.
    선택자들 사이에서 반복되고 있는 코드들은 mixin 사용하여 코드 반복 줄임
    중복되는 코드는 mixin으로 만들어 놓고 원하는 선택자 블럭에 mixin을 include

@mixin 관계없는 요소
@content 원하는 부분에 스타일 추가하여 전달가능
@extend 연관 있는 것 (실무에서는 손에 익은 것 쓰는 경우가 많다. )
연관있는 요소들끼리 스타일 코드가 중복된 경우에 사용. 이미 스타일이 작성된 선택자의 클래스를 extend하거나, %를 사용해서 따로 스타일을 정의한 후에 extend하여 원하는 선택자에게 스타일을 적용해줄 수 있다.

  • vending machine 꼭 사용 -> 2차 코테 !!!!! ( 이것만 보는 경우도 있음)
profile
초록색 귤이 노랑색으로 익어가듯, 실력이 익어가기 위해 노력하는 개발자 lahee입니다. 프론트엔드 개발자를 목표로 성장하고 있습니다.

0개의 댓글