전체 글 29

게임 서버 개발시 C기반 언어(C,C++) VS java 에 대한 생각

C계열 언어(C,C++) VS 자바에 대한 고찰 게임 서버 엔진을 설득하면서 시중에 나온 제품들을 검색해보니,90% 이상의 제품들이 C 계열 언어로 개발됐고, C 계열 언어만 지원하는 엔진이었다. 이런 특징은 데이터베이스 제품을 검색할 때에도 발견했었다. 성능이 매우 중요한 제품들은 결국 C 계열 언어로 개발해야만 하는 것일까?C와 자바에는 어떤 차이점이 있기에 이런 현상이 발생했을까? 아래 사이트들을 참고하고, 내 코딩 경험과 빗대어 생각해봤다. 오키에서의 토론https://okky.kr/article/449759 위키 자료 - C++ vs javahttps://ko.wikipedia.org/wiki/%EC%9E%90%EB%B0%94%EC%99%80_C%2B%2B%EC%9D%98_%EB%B9%84%EA..

Jmeter RDBMS 테스트용 쿼리문 정리

Jmeter 테스트용 쿼리문 정리 Jmeter 에서 RDBMS를 벤치마크하기 위해 사용한 쿼리문들이다. jdbc:cubrid://220.117.238.110:3306/testdb 220.117.238.110 db외부 접근 과정 커넥션 설정(커넥터가 세팅됨)-> 외부 접근 허용 설정(ip, 계정) -> 테이블 생성 SQL문 CREATE TABLE INVENTORY(idInventory Date,idChar UInt32,nameChar String,nameItem String,typeItem String,numItem UInt32) ENGINE = MergeTree(idInventory, idChar, 8192); CREATE TABLE INVENTORY(idInventory INT PRIMARY KEY A..

Database 2018.08.13

산다는 것, 그것은 수련을 하는 것이다.

산다는 것, 그것은 수련을 하는 것이다. 우리는 수련할 때 우리 앞에 있는 것에 대비한다.삶과 죽음은 의미를 잃고, 존재하는 것은 오직 도전이다. 기쁜 마음으로 맞아들이고 평정심을 가지고 극복하는 도전만이 있을 뿐이다.- 파울로 코엘료, '알레프'에서 - 무언가에 도전하고 극복하는 과정 속에 몰입(Flow)이 있고, 행복이 있다.인생이란 무엇인가에 대해 복잡하게 생각할 것 없다. 매일 매일 더 나은 나를 만들어가는 것이 곧 삶이다.

생각, 회고 2018.07.08

ssh 접속 계정으로 하는 법

ssh 접속 openssh 설치 후 root로 접속이 되지 않았다. https://askubuntu.com/questions/497895/permission-denied-for-rootlocalhost-for-ssh-connection ssh 설정에서 계정 로그인이 가능하도록 설정해야 한다. (아니면 SSH 키로 로그인 할 것) 키를 이용한 방법이 잘 되지 않아서 일단 계정 로그인을 설정하였다. #vi /etc/ssh/sshd_config vi 방향키 오류 발생시 vim 설치할 것 설정 파일을 열고. :/PermitRootLogin 하여, 해당 항목을 검색한다. 이 항목이 주석처리 되어 있었다.이 항목 값을 yes로 변경 한 후, 서비스를 재시작하면 계정 로그인이 가능해진다.(phpStorm 원격 접속이..

개발환경 2018.07.06

RDBMS의 백업 및 복구에 대한 연구 - (2) 백업 및 복구 테스트 준비

RDBMS의 백업 및 복구에 대한 연구 - (2) 백업 및 복구 테스트 준비 1. 테스트 후보군 1. MySQL2. MariaDB3. PostgreSQL4. Cubrid5. Firebird 2. 각 DB는 어떻게 백업 / 복구를 구현했는가? 각 DB의 백업 및 재해 복구(Disaster recovery)를 살펴보자 1) MySQLhttps://dev.mysql.com/doc/refman/8.0/en/backup-and-recovery.htmlhttps://dev.mysql.com/doc/refman/8.0/en/backup-strategy-summary.htmlhttps://dev.mysql.com/doc/refman/8.0/en/innodb-recovery.html MySQL 백업 MySQL Enter..

Database 2018.07.05

RDBMS의 백업 및 복구에 대한 연구 - (1) 기본 개념

RDBMS의 백업 및 복구에 대한 연구 - (1) 기본 개념 백업이란 무엇인가? https://www.techopedia.com/definition/1235/relational-database-management-system-rdbmshttps://www.techopedia.com/definition/24058/backup-and-recoveryhttps://technet.tmaxsoft.com/upload/download/online/tibero/pver-20140808-000002/tibero_admin/ch_BackupRecovery.html#d5e6326데이터베이스에 문제가 생길 것을 대비하여,DB의 데이터(스키마 및 테이블 등)의 사본을 따로 저장해두는 것 복구란 무엇인가? DB의 저장해둔 백업..

Database 2018.07.03

RDBMS - 인덱스

RDBMS - 인덱스 1. 인덱스란? 인덱스는 우리말로 색인과 같은 개념이다. 색인의 사전적 정의는 다음과 같다.색인 : 책 속의 내용 중에서 중요한 단어나 항목, 인명 따위를 쉽게 찾아볼 수 있도록 일정한순서에 따라 별도로 배열하여 놓은 목록. 우리는 원하는 정보가 있을 때 목차나 색인을 보고 해당 정보가 있는 페이지를 바로 찾을 수 있다.인덱스가 없다면 어떤 단어를 찾을 때, 책의 첫 페이지부터 끝 페이지까지 순서대로 검색해야 한다. DB에서의 인덱스는?DB의 내용 중에서 필요한 데이터를 쉽게 찾을 수 있도록 일정한 순서에 따라 배열한 목록이 되겠다. 인덱스를 사용하는 이유는 검색 속도를 높이기 위함이다. 2. 인덱스를 쓰면 좋은 점? 1) 검색이 빨라진다. (SELECT, WHERE 절로 검색해야할..

Database 2018.06.28

RDBMS -트랜잭션 검토

RDBMS -트랜잭션 검토 1. 트랜잭션이란? 여러 단계를 걸쳐 수행하는 작업을, 한 번에 수행할 수 있는 작업처럼 다루는 기능 핵심 : 작업을 모두 수행해놓거나, 이상이 생길 경우 수행하지 않은 상태로 두는 것 ex) 돈 거래 두 플레이어가 아이템과 골드를 교환한다고 가정하자.다음과 같은 순서로 데이터 전달이 이뤄진다. 1. 플레이어 1과 2가 거래 확인을 누른다.2. 플레이어 1의 지갑에서 5만원을 감소시킨다.3. 플레이어 2의 지갑에서 5만원을 증가시킨다.4. 플레이어 2의 인벤토리에서 아이템을 지운다.5. 플레이어 1의 인벤토리에서 아이템을 생성한다.6. 거래 종료 만약 2번에서 5번 과정 도중에 렉이 걸려서 DB가 동작하지 않는다면?플레이어가 손해를 보는 상황이 발생할 것이다.따라서 DB에서는 ..

Database 2018.06.22

RDBMS 개념 정리

1. RDBMS(관계형 데이터베이스 관리 시스템)란 무엇인가? RDBMS는 데이터 베이스 모델 중 하나인, 관계형 모델에 기반한데이터베이스 관리 시스템이다. 2. 데이터 베이스 모델이란? 데이터베이스의 구조, 형식을 말한다. 계층형 모델, 네트워크형 모델, 관계형 모델 등이 있다. 3. 관계형 모델이란? 테이블 형태로 만든 데이터베이스 모델. 관계형 모델의 핵심은 '테이블'이다.관계형 모델을 '테이블' 모델이라고 얘기해도 좋다. 여러 개의 테이블을 만들어 데이터를 저장하고,정해진 SQL 문으로 데이터들을 다루게 된다. 키워드 : 테이블, 컬럼과 로우, 키와 밸류, 정규화 관계, 조인, 테이블-테이블이 관계로 연결된다. 4. 관계형 모델에서의 관계는 어떤 의미지? 인간 관계, 상관 관계... 관계가 머리 ..

Database 2018.06.18