공식 홈페이지 : https://golang.org/다운로드 : https://golang.org/dl/패키지 : https://pkg.go.dev/std문서 : https://golang.org/doc/
Go 코드 작성은 vsc에서 하면 된다.실행은빌드는
1. 변수 2. 제어문 3. 반복문 4. 함수선언 5. 자료구조 6. 패키지+모듈
6\. 패키지+모듈
6\. 패키지+모듈
6\. 패키지+모듈
6\. 패키지+모듈
6\. 패키지+모듈
go로 구현된 ion-sfu 단어부터 정리해 본다.pion : The Open Source, Cross Platform Stack for Real-time Media and Data Communication. - WebRTC를 위한 오픈소스 플랫폼이라 생각한다.http
아주 간단하게 시작함.
json.NewDecoder(r.Body).Decode(user) :: r.Body를 읽어서 user형태로 디코딩 처리json.Marshal(user) :: user타입 데이터를 byte\[]와 error로 변환string(data) :: byte\[]로 변환된 데이터
다른 폴더에 작업을 하고 이것을 임포트하려다 보니 잘 안되었다. 찾아보니 local package import가 github로 안되어 있으면 약간 불편하다.go.mod에서 replace 문을 통하여 main.com/myapp module path를 relative pa
_test.go로 파일명을 작성하면 테스트 코드로 작동함. func 선언할 때도 함수명을 Testooo로 시작함. 매개변수는 정해져 있음 testing 패키지의 T포인터를 넘겨줌. goconvey 설치 :: 백그라운드로 돌면서 파일 갱신시 자동 테스트 처리해줌 (h
일반적으로 entrypoint 가 되는 go 파일은 cmd 디렉토리 아래에 위치하고 나머지 go 파일들은 pkg 디렉토리에 패키지 구조로 위치합니다.vendor 디렉토리는 dependency module 을 다운받은 곳출처: https://ahnseungkyu
참고::https://blog.naver.com/tkdlqm2/221761859463
webrtc를 경험해 보면서 가장 크게 느꼈던 것은 webrtc의 성능은 네트워크 기술에 좌우한다는 것이다.zoom이 화상채팅의 강자가 된 것은 cisco의 네트워크 기술이 들어간 것이 아닐까? 아래 링크를 보며 시그널링 서버, sturn/turn서버, 미디어 서버 구
쉘에서 다음과 같이 치면 현재 열린 포트 목록을 확인할 수 있다.sudo lsof -PiTCP -sTCP:LISTEN특정 포트를 찾아 포트를 닫고 싶으면 다음과 같이 쳐서 PID를 알아낸다.sudo lsof -i :3000여기서 3000이 포트번호이다.위에서 나온 PI
참고 :: https://developer-mac.tistory.com/83
출처 :: https://velog.io/@dojun527/%ED%95%98%EC%9D%B4%ED%8D%BC%EB%A0%88%EC%A0%80%EB%9E%80
출처 :: https://velog.io/@dojun527/%ED%95%98%EC%9D%B4%ED%8D%BC%EB%A0%88%EC%A0%80%EB%9E%80
Clearing the known_hosts SSH File출처 :: https://www.rit.edu/researchcomputing/instructions/Clearing-the-known_hosts-SSH-File
출처: https://askubuntu.com/questions/786015/how-to-remove-nodejs-from-ubuntu-16-04
출처 ::https://4eda.tistory.com/entry/Ubuntu-20041-LTS%EC%97%90%EC%84%9C-nvm-nodejs-npm-%EC%84%A4%EC%B9%98%EC%99%80-%EC%A0%9C%EA%B1%B0%ED%95%98%EA%
HTTPS통신을 위한 openSSL출처 :: https://namjackson.tistory.com/24
RabbitMQ TLS 보안 설정하기출처 ::https://jookting.tistory.com/113?category=945647
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=oidoman&logNo=220833403583https://m.blog.naver.com/oidoman/220832427092
출처 :: https://ingg.dev/cors/
출처::https://velog.io/@cham/JAVA-%EC%8A%A4%ED%8A%B8%EB%A6%BCStream
try_files 설정https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=moonv11&logNo=221072030385SSL 인증서 설정https://m.blog.naver.com
프락시 서버 구축하기출처::https://www.joinc.co.kr/w/Site/System_management/Proxy
Proxy 서버 구축하기joinc.co.kr/w/Site/System_management/Proxy
이벤트 스토밍이 핵심https://www.youtube.com/watch?v=GVFTIlI42Rcddd 관련 설명 https://www.youtube.com/watch?v=td5VRmxntmw
우분투만 있는 상태그러면 비어있던 디렉토리에 package.json이 생성된다.
설치 중간 중간 Password를 물어보는데 빈칸으로 두고 OK를 누르면 Ubuntu 서버 비밀번호와 자동으로 동기화 된다.default-time-zone=Asia/Seoul 을 맨 아래에 적어넣음처음에 $ sudo mysql -u root -p 로 진행했더니 아래와
mysql>CREATE DATABASE 데이터베이스이름 default CHARACTER SET UTF8;mysql>show databases;mysql>use 데이터베이스이름;mysql>drop database 데이터베이스이름;mysql> show tables;mysq
로그 기록을 남기는 morgan 모듈Express에서 제공되고 정적 파일 서비스를 도와준다.router를 사용하여 경로를 모듈화 할 수 있다.Express에서 이런식으로 reponse.redirect나 request에서 ip를 받아오는등의 기능을 할 수 있다.출처: h
jython
출처 : https://velog.io/@hanbinleejoy/Spring-Boot-Python%EC%9D%84-%EC%9D%B4%EC%9A%A9%ED%95%9C-%EC%9E%90%EB%A3%8C-%EC%88%98%EC%A7%91-%EC%9E%90%EB%8F
출처 : https://diyver.tistory.com/166https://haruhiism.tistory.com/82https://parkjh7764.tistory.com/28
출처 :https://overcome-the-limits.tistory.com/101https://soom-soom.tistory.com/77https://velog.io/@hyeong412/TIL-Express-%EC%97%90-Swagge
a. MySQL Folder로 이동cd /etc/mysqlb. my.cnf 파일을 출력sudo nano my.cnf( nano 편집기를 이용하여, 관리자 모드로 화면에 출력 )port = 3306bind-address = 127.0.0.1127.0.0.1은 현재 Loc
MySQL 데이터베이스 명명 규칙출처 : https://willeeproject.tistory.com/193
1.1 QuerystringQuerystring 'req.param()'을 이용하여 쿼리스트링을 통해 요청된 파라미터를 받아낼 수 있다. 쿼리스트링의 id는 name과 age로 하여 보내고자 하는 데이터를 서버에 요청하자. 'http://localhost:30
출처:https://junspapa-itdev.tistory.com/10https://velog.io/@nayonsoso/Node.js-%EB%A1%9C-MySQL-%EC%A0%9C%EC%96%B4%ED%95%98%EA%B8%B0
웹에서 파일 업로드는 두 가지 방식이 있다.(1) applecation/x-www-urlencoded(2) multipart/form-data전자의 경우 인코딩으로 인한 성능 이슈가 발생할수 있으니 후자의 방법으로 전송하는 것이 좋다고 한다. DB에 이미지 저장 방법
nginx 서버에서 이미지 등의 static한 파일을 설정하여 serve 하는 방법에 대하여 알아봅니다.예를들어 아래의 경로로 접근하는 모든 파일들은 서버의 특정 경로에 있는 파일에서 찾아 보여주도록 설정하려고 합니다.// 접근된 이미지 경로webisfree.com/i
mysql 덤프는 mysqldump 를 사용한다.여기서 사용자 아이디로 접근하는데 root 권한이 있는 사용자로 하는 것이 바람직하다. 권한이 없는 경우 아래와 같이 거부 될 수 있다.데이타베이스 덤프예) mysqldump -u kamkami -p mydatabase
node 서버를 실행하려면 npm start등등로 구동을 하지만포그라운드로 돌리면 터미널 종료와 함께 서버가 종료된다.따라서 백그라운드로 돌리는 것과 서버를 재부팅해도 재실행해주는 것이 필요하다.그래서 나온게 Node.js 세계에서는 forever와 PM2가 유명한데,
프로젝트를 하다보면 .env .env.production .env.development를 가지고 진입점을 다르게 하고 싶을 때가 많다.설치 npm i -s dotenvnpm i -s cross-env그럴때 dotenv를 설치하고 cross-env로 실행 할 때 변수를
npm을 선택함. 그 뒤 자동으로 폴더와 설정파일들 생김.터미널에서nest g controller abtest --no-specnest g service abtest --no-spec
https://velog.io/@yiyb0603/Nest.js%EC%97%90%EC%84%9C-%ED%8C%8C%EC%9D%BC-%EC%97%85%EB%A1%9C%EB%93%9C%ED%95%98%EA%B8%B0https://any-ting.tistor
https://wikidocs.net/book/7059
https://docs.nestjs.com/techniques/http-module
nestjs에서는 @nest/config 를 사용한다.단순한 환경 파일을 불러오는데 꽤나 봅잡하다. 모듈을 설정하고 등등... 굳이 그럴 필요 없을 것같아서npmjs에 있는 config와 cross-env로 해결했다.npm install config --savehttp
UUID 버전은 1, 3, 4 및 5가 있다. 이 중 많이 쓰이는 것은 버전 1과 4이다. 버전 1은 타임스탬프를 기준으로 생성되며, 버전 4는 랜덤 생성이다. 버전 3, 5는 각각 MD5, SHA-1 해쉬를 이용해 생성하는 방식이다.출처::https://ww
https://docs.nestjs.kr/techniques/file-upload여기서 중요한 것은 이 부분이다. @UseInterceptors(FileInterceptor('file', multerOptions))multerOptions에 디스크 저장인지 메
카페24에서 클라우드 호스팅으로 우분투만 깔려 있는 상태에서 시작한다.방화벽은 카페24 호스팅에서 하기에 생략nignx // static 폴더와 front-end를 위해 필요ftp // front-end 작업을 위해 필요nodejs + npmmysql // dbgit
보통 에러가 생기면 을 해본다. 그래도 문제가 생긴다면 꼬였을 경우다.npm도 버전이 다양한데, apt-get 등으로 설치할 경우에 버전이 제각각으로 설치되어, 나중에 꼬이게 되는 문제가 발생한다. 로컬에서 npm 버전을 업그레이드하거나, CI 서버에서 빌드를 할 때
우분투에서 nvm 설치node 버전 설치사용할 node 버전 선택nvm run node --version nvm use node nvm use --lts nvm use 16.14.0 nvm use 16 \`\`\`node 삭제하기nvm으로 node 버전을 삭제할 수 있
출처::https://webisfree.com/2018-01-06/nginx%EB%A5%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC-%EB%A9%80%ED%8B%B0-%EB%8F%84%EB%A9%94%EC%9D%B8-%EC%97%B0
\-- 16MB 이상인 데이터는 파일을 chunk로 쪼개어 db에 저장하는 기법.\-- db를 지정하지 않으면 test db에 저장됨.GridFS를 이용하면 다음과 같은 이점이 있다.파일을 저장하는 구조를 단순화 할 수 있다.별도의 파일 저장소를 만들 필요가 없다.안정
출처 :: https://yangeok.github.io/orm/2020/12/14/typeorm-decorators.html
출처:https://orkhan.gitbook.io/typeorm/docs/select-query-buildercrud https://choseongho93.tistory.com/302entity https://yuni-q.github.io/
서버에서 response를 보낼 때 header에 "Access-Control-Allow-Origin" = \* 을 추가한다.출처 ::1 내가 찾은 CORS Error의 올바른 해결법https://coding-groot.tistory.com/91
내장된 HTTP 예외들Nest는 일반적인 표준 예외들을 HttpException을 기본 베이스로 해서 제공하고 있다. 그리고 이것들은 모두 @nestjs/common 패키지에 속해있다.BadRequestExceptionUnauthorizedExceptionNotFoun
https://velog.io/@josworks27/TypeORM-%EA%B4%80%EA%B3%84%EC%84%A4%EC%A0%95https://itchallenger.tistory.com/236https://velog.io/@yrkimyy/
출처 :https://allg.tistory.com/37https://happylulurara.tistory.com/127
출처 ::https://snowple.tistory.com/360
갑작스럽 delete 수행에 의해 복구하는 경우를 대비하여 binary log를 설정하자.1 먼저 mysql 에서 binary log를 확인할 수 있다.어드민으로 mysql 접속하고 mysql> sho binary logs;실행하면 Log_name과 File_size
출처 :https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=ntzkimy&logNo=50186685378
$ vi db_backup.sh$ chmod +x db_backup.sh로 실행 권한을 부여$ crontab -e로 작성 모드 들어간다.그 안에서입력하고 저장하여 빠져나온다.$ crontab -l로 잘 저장되었는지 확인 가능출처 :: https://jizard
https://blog.vuestorefront.io/nest-js-microservices-example/
https://docs.nestjs.com/techniques/database
ormconfig.json 파일로 다중 디비 설정을 하자 !https://devpunch.tistory.com/5https://stackoverflow.com/questions/51994541/nestjs-typeorm-use-two-or-more-d
Build an Uploading Service to S3 using NodeJS and TypeScript출처 https://messaismael.medium.com/build-an-uploading-service-to-s3-using-nodejs-and-t
NestJS DB 캐시 Redis 사용하기https://tre2man.tistory.com/277
출처::https://jakekwak.gitbook.io/nestjs/https://jakekwak.gitbook.io/nestjs/websockets/gateways
you can use readAsArrayBuffer, emit the buffer, then emit to other clients, clients can then use createObjectURL, basic example:https://codesandb
출처 ::https://www.youtube.com/watch?v=kgDx3W-qoos
참고https://github.com/teaming-project-team3https://blog.ewq.kr/37?category=909856https://github.com/for2gles/realtime-chathttps://g
schema를 바꾸면index가 중복된다는 이유로 추가가 안된다.E11000 duplicate key error collection충돌하는 인덱스를 찾아 키값으로 삭제를 해 준다.출처::https://velog.io/@0hhanum/express-MongoEr
참고::https://pro-self-studier.tistory.com/61https://velopert.com/516
참고::https://www.holistics.io/blog/how-to-extract-nested-json-data-in-mysql-8-0/
참고 ::https://velog.io/@kdhyo/JavaTransactional-Annotation-알고-쓰자-26her30h
ReloadableResourceBundleMessageSourcehttps://atoz-develop.tistory.com/entry/Spring-Spring-어플리케이션-메시지-다국어-및-재로딩-처리
https://cheese10yun.github.io/spring-builder-pattern/
Spring Data JPA Tutorial https://www.youtube.com/watch?v=XszpXoII9Sg
Java enum 활용기 (우아한 형제들)https://techblog.woowahan.com/2527/
출처 https://www.youtube.com/watch?v=J_7xasdHBZI
출처https://www.youtube.com/watch?v=nyN4o9eXqm0
customers.stream().map(customer-> new CustomerDetailResponse(customer)).collect(Collectors.toList());참고:https://codechacha.com/ko/java8-convert-s
단방향, 양방향1:1, 1:N, N:1까지만 쓴다. 거의 단방향 위주, 양방향은 꼭 필요한 경우참고 https://www.youtube.com/watch?v=i8XAqCGcLqw&list=PLwouWTPuIjUi9Sih9mEci4Rqhz1VqiQXX&index
nestjs/typeorm 0.3.x 적용 / Custom Repository가 안 된다아래 내용은 다음과 같다.1\. CustomRepository와 CustomTypeOrmModule 코드를 작성한다.2\. EntityRepository는 이제 사용 불가하므로, C
참고)(에러)Allocation failed - JavaScript heap out of memoryhttps://wd501.tistory.com/404Nodejs - 메모리 누수 확인https://ajh322.tistory.com/243
I just faced same problem with my EC2 instance t2.micro which has 1 GB memory.I resolved the problem by creating swap file using this (https://aw
https://www.youtube.com/watch?v=qqnp-H5EotM&list=PLIGDNOJWiL1_YrquGbDDN4BNNRy678Spr&index=22https://www.youtube.com/watch?v=5tau19ae6aY&list
참고)NestJS로 배우는 백엔드 프로그래밍 14장 태스크 스케줄링 14.1 @nestjs/schedule 패키지https://wikidocs.net/158660
참고)https://velog.io/@jonghyun3668/Nestjs-다른-모듈의-서비스에서-리포지토리-서비스-사용하기
참고)https://wanago.io/2022/07/11/api-with-nestjs-migrating-to-typeorm-0-3/https://hou27.tistory.com/entry/TypeORM-버전-03-ORM이란
Sol 1. System 직접 설정 방법현재 시간 확인root@localhost ~ dateTue Aug 24 04:40:30 UTC 2021시스템 전역 timezone은 /etc/sysconfig/clock 에 정의, 한국 기준으로 재설정하자.vim /etc/sys
@ApiProperty에서 array를 인식하는 것은 type: object-type 넣어주면 됨.참고)https://stackoverflow.com/questions/68477501/apiproperty-not-reflecting-the-type-of-dat
참고)https://ram-t.tistory.com/69
JWT의 적절한 수명 알아보기)https://dev-jacob.tistory.com/entry/JWT의-적절한-수명-알아보기AccessToken이 만료됐을때 RefreshToken을 사용하여 AccessToken을 재발급 받기)https://intre
NestJS DB 캐시 Redis 사용하기https://tre2man.tistory.com/277nestjs cashing 공식문서)https://docs.nestjs.com/techniques/cachingNestJs의 Module과 CacheMod
5분 안에 구축하는 uWSGI (with. Flask, nginx)출처)https://co-de.tistory.com/27
Ent 사용해보기)https://velog.io/@leeeeeoy/Go-Ent-사용해보기
OAuth 개념 및 동작 방식 이해하기https://tecoble.techcourse.co.kr/post/2021-07-10-understanding-oauth/
main.jsExtendedSocketIoAdapter.ts단점 ::@WebSocketGateway({ namespace: 'videoChats' }) 여기서 namespace 같은 옵션이 무시된다. 같은 포트에 엔드포인트들이 동시에 연결된다. wss://127.0.0
Docker 시작하기 (개념/설치))https://www.daleseo.com/docker/ec2에서 도커 설치)https://docs.aws.amazon.com/AmazonECS/latest/developerguide/create-container-
go fiberhttps://gofiber.io/https://docs.gofiber.io/시작하기go echohttps://echo.labstack.com/guide/43 KILLER GOLANG Projects in 43 Different
go 의 모듈 관리 go mod)https://soyoung-new-challenge.tistory.com/130go mod 를 이용한 패키지 관리 방법)https://lejewk.github.io/go-mod/
노드를 더 우아하게. pm2 이야기)https://jybaek.tistory.com/716
설치기능매일 일자별로 하나씩 분리되어 저장가능함.로그의 위치는모듈설정 정보 보기설정 값을 바꿀때는 pm2-logrotate 로그 관리 모듈)https://develop-obm.tistory.com/82https://hellvelopment.tistor
노드js 내용임. 버퍼에 쓰기 Node.js의 Buffer를 제대로 이해해보자) https://tk-one.github.io/2018/08/28/nodejs-buffer/ S3에 PutObject) https://docs.aws.amazon.com/kokr/Amaz
https://www.tutorialsteacher.com/mongodb/documents
Controller, @Param, @Body, @Query ...https://darrengwon.tistory.com/846
Find Optionshttps://orkhan.gitbook.io/typeorm/docs/find-options
Nest.js Nest.js API 만들기 (7) - TypeORM 관계 설정(1 : 1, 1 : N, N : N ...)https://any-ting.tistory.com/115
https://blog.naver.com/jd06280/222634345852