엘키의 주절 주절

소소한 개발 이야기

Docker로 소켓 서버를 운용하기 어려운 이유

꽤 많은 분들이 물어보셨다. 그래서 왜 소켓 게임 서버는 Docker 도입 어려워요? Docker 자체를 공부하고 사용해본 결과…! 바로 메모리에 상태를 보유하고, 이를 기반으로 응답성을 끌어올리는 방식이 게임 서버의 기본 전제인데, Docker는, 아주 더 정확히는 K8S류의 관리 시스템 다수가, 서비스를 언제 올렸다 내려도 상관없게끔 구현된 ...

C# VS Java

내가 가장 오래 사용한 언어는 단연 C++이다. 게임 업계에선 꽤나 오랜 기간 이견이 없었던 언어이다. 이후 루비 파이썬 등을 접했고, 그리고 C#, 자바, 자바 스크립트를 사용해가며 감상이 많았다. 이 중 가장 많은 대중적인 비교를 당하는 것이 바로 C#과 자바라고 할 수 있다. C++처럼 실수하기 쉽고, 실수의 리스크가 큰 어려운 언어에 비...

Notion (노션) 추천

모든 기록을 남기는 곳을 OneNote에서 Notion으로 변경하게 됐다. 여러가지 이유에서 였는데, 먼저 EverNote → Google Drive → OneNote → Notion 으로 오게된 이야기를 해보고자 한다. 우선 Evernote를 사용할 당시를 보면, 우선 간단한 메모, 스티키 노트 (포스트잇) 용도로써 사용을 시작했다 아무래도 모...

Ocelot - ASP.NET CORE API Gateway

나는 2년 정도 자바로 외도(?)를 하다 왔다보니, 자바 생태계의 패키지나 프레임 워크를 접하고 사용해보게 되었었는데, 그 중 API Gateway 및 서비스 구성 관리용 4종 세트인 Netflix Zuul, Hystrix, Ribbon, Eureka를 사용하게 됐었다. 그러던 중 다시 게임 개발을 하게 되면서, C#으로 모든 서버군을 구축하게 되었...

트랜잭션 이야기 - 개발자 마다 다른 DB를 대하는 자세

내 입장에서 웹 개발자 분들과 같이 협업하고 대화하면서 아이러니 했던 두가지가 있었다. 10년도 더 넘게 지난 얘기지만, 한가지는 비동기 응답이 어렵다는 이야기였고, 그렇다보니 여러가지 고민들 중의 해결책인 Ajax라는 이름으로 화두가 되고 있다는 얘기였다. Native Socket를 다루는게 너무나도 당연하던 나에겐 어째서 비동기 응답을 받을 ...

Kubernetis 이야기

개요 쿠버네티스가 이미 너무나 당연한 대세가 된지 꽤 됐으나… 여러가지 속설과 사용해본 분들의 단편적인 감상만으로는 부족했다. 나는 작년이 되서야 제대로 사용해보게 되었는데, 그에 대한 감상과 경험담을 써보도록 하겠다. 직접 사용해본 결과, 확실히 어려운 부분이 존재는 하지만, 대부분의 학습 곡선이 네트워크 구성이고, 나머지 구성요소는 어차피 도...

Docker 이야기

개요 도커가 대중화된지 꽤 오래됐으나 배포 빈도/ 새 환경 구성, 오토 스케일링이 덜 필요한 환경에서 일할 수록 도커의 필요성이 상대적으로 우선 순위에서 밀리는 일이 비일비재했다. 나 역시 그랬고, 가볍게 사용해보거나 일부 서비스에서 도입했을 뿐이었다. 대 다수 개발자들은 아직도 서버를 새로 띄울 때 Dockerfile을 작성하고 Docker위에 ...

2019년 회고

들어가며 한해를 돌아보기 위해선 기록이 많았어야했는데, 작년 한해는 기록이 많지 못했다. 여러가지 이유가 있었지만, 결과적으로 아쉬운 부분이다. 내년에는 많 것을 극복해 좀 더 나은 한해를 만들고 싶다. 회고 건강 애초에 건강하지못했기도 하지만, 다년간 누적된 정신적, 육체적 피로가 폭발했다. 그로 인해 한해의 반 이상을, 정해진 업무를 쳐내...

개발자의 성장

개요 얼마 전 지인들과 점심 식사를 하면서, 근황 이야기를 나눴다. 그 과정에서 성장에 대한 우려에 대한 이야기가 나왔다. 나 역시 성장에 집착(?) 하는 편이다 보니, 주의 깊게 듣게 됐는데, 포인트는 다음과 같았다. 팀바팀, 케바케라지만, 서비스를 하는 많은 회사는 변화를 두려워한다. 변화는 리스크로 인식되기 쉽고, 실제로 그런 측면이 없...

웹과 게임에서 다르게 사용되는 캐시

성능 향상을 위해 다양하게 이용되는 캐시 이 캐시마저, 게임과 웹에선 다르게 적용되는데, 이에 대한 질문을 꽤 여러번 받았다. 그 과정에서 설명했던 내용을 글로 정리해보고자 한다. 웹 사용자에게 보낼 HTML 캐시 API 파라미터에 대한 동일한 응답을 위한 캐시 DB 처리 전의 중간 저장소로의 활용. ...