IOCP 서버강의
·
Study/Server
IOCP 서버강의게임서버란웹서버테이크 아웃전문점손님이 음식받으면 끝질의 응답 형태드물게 정보 갱신손님이 떠나면, 손님의 상태를 잃어버림 (Stateless)웹, 웹서비스 만드는데 많이 사용게임서버일반식당서빙직원이 와서 손님에게 물어보고 추가주문 등…실시간 Interaction 있음요청갱신 굉장히 많음손님이 식당에 머무는동안, 손님의 상태 계속 살펴봄 (Stateful)게임서버는 게임장르에 따라 요구사항이 많이 달라 게임서버 엔진같은 것을 활용 불가능함상황에 맞게 최적화하고 직접 코어를 코딩해야함DeadLock스레드 2개가 서로 함수를 실행할때 Lock 을 사용하고 그 함수들이 Lock을 서로 필요할떄 교착상태로 멈추게 되는 상태해결방안 :Lock의 순서를 정해서 Lock끼리 겹치지 않도록 구현Lock을 ..
'Error: Could not find or load main class' 자바관련 에러
·
Study/Linux
Error: Could not find or load main class HelloJava Caused by: java.lang.ClassNotFoundException: HelloJava 오타도 없고, 클래스명과 파일명도 일치하고, 환경변수 Path 설정도 했는데 이러한 오류가 계속 발생했다. >해결 제어판 - 시스템 및 보안 - 시스템 - 고급 시스템 설정 - 환경 변수에 들어간다. (사용자명)에 대한 사용자 변수 항목의 JAVA_HOME 값은 C:\Program Files\Java\jdk-12.0.1 로 설정되어 있고, 시스템 변수 항목의 CLASSPATH 값은 %JAVA_HOME%\lib 으로 설정되어 있다. 여기서, java는 %JAVA_HOME%\lib 디렉토리 자체에서 해당 클래스를 찾으려고..
RDB 데이터 저장 역정규화
·
Study/Mysql
https://inpa.tistory.com/entry/MYSQL-%F0%9F%93%9A-RDB%EC%97%90-%EB%B0%B0%EC%97%B4%EC%9D%84-%EC%A0%80%EC%9E%A5%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95 [MYSQL] 📚 RDB에 배열을 저장하는 방법 MySQL에 배열 데이터를 저장 게시판을 제작하는데 있어, 게시글의 내용을 서버에 다음과 같이 보낸다고 가정해보자. 게시글 제목(title)과 게시글 제목(description) 그리고 게시글에 사용된 이미지(thu inpa.tistory.com 저장해야할 데이터가 많고 배열같이 정규화를 해서 Join 해서 저장하는 등 정규화로 저장하기 복잡할때 그냥 역정규화 (JSON 데이터) 자체를 저장해도 성..
Linux 직접만든 .sh 의 sudo command not found
·
Study/Linux
https://stackoverflow.com/questions/12996397/command-not-found-when-using-sudo Command not found when using sudo I have a script called foo.sh in my home folder. When I navigate to this folder, and enter ./foo.sh, I get -bash: ./foo.sh: Permission denied. When I use sudo ./foo.sh, I get sudo: foo.sh: stackoverflow.com $ chmod +x foo.sh sudo 로 실행해도 실행파일의 실행권한이 없어서 command 를 찾을 수 없다고 뜨는 경우가 있음 cho..
E: Unable to locate package
·
Study/Linux
$ sudo apt install yum Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package yum yum이 설치가 안된다. 원인 ubuntu에서 package를 다운로드하는 홈페이지 주소가 추가되어 있지 않아서 그렇다. 해결 /etc/apt/source.list에 다음 내용을 추가한다. (혹시 모르니 source.list파일 백업 필수) deb http://archive.ubuntu.com/ubuntu bionic main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu bi..
Centos 폰트 설치
·
Study/Linux
cd ~/ 홈디렉토리 가기 mkdir .font 폰트용 폴더만들기 font 설치 먼저 폰트를 관리하는 유틸리티인 fontconfig패키지를 설치합니다. RHEL/CentOS sudo yum install fontconfig Ubuntu sudo apt install fontconfig fc-cache 명령어는 시스템에 있는 폰트를 읽어서 cache 정보를 만드는 유틸리티입니다. 강제로 재생성하는 옵션인 -f 와 상세 정보를 보는 -v 옵션을 사용해서 캐시 정보를 갱신합니다. 폰트 캐시 sudo fc-cache -f -v /usr/share/fonts: caching, new cache contents: 0 fonts, 2 dirs /usr/share/fonts/nanum: caching, new cach..
GORM 빈값 업데이트 문제
·
Study/GoLang
https://medium.com/@speedforcerun/golang-how-to-solve-gorm-not-updating-data-when-you-may-have-none-zero-field-724ccb351e8b [GoLang] How to solve GORM not updating data when you may have none-zero field? Why does the update function not working when using GORM? One reason may be that you have null or 0 in the data you want to update! medium.com
명령어 모음
·
Study/Linux
실행파일 백그라운드 실행 testScript.sh & 서버 꺼져도 다시 실행되도록 실행 nohup ./main & Background Process 확인하기 ps -ef nohup 종료 kill PID nohup 로그 nohup 으로 실행된 스크립트 위치에 nohup.out 이라는 로그 자동 생성됨