반응형

개발자

    [카카오][세미나] Webflux로 막힘없는 프로젝트 만들기 - 정리

    Spring Mvc - 하나의 요청에 하나의 쓰레드만이 사용되기 때문에 직관적 - 요청 하나의 응답이 길어지게 되면 쓰레드 하나가 계속 붙잡히고 이렇게 쓰레드들이 계속 밀리게 되면 쓰레드풀이 고갈되어 전체 시스템에 문제가 발생 Spring Webflux - 외부 시스템의 응답이 늦어져도 쓰레드가 홀딩되는 문제를 예방할 수 있다. - reactor로 개발된 코드가 circuit breaker를 연동하는데 더욱 용이하다는 장점이 있다. Reactor Meltdown - webflux는 netty의 이벤트 루프 방식을 차용한 방식으로 queue에 쌓인 이벤트를 event loop 쓰레드가 이를 처리하는 방식으로 쓰레드풀 고갈 문제를 발생하지 않음 - mvc의 기본 업무 단위는 요청 webflux는 이벤트 - ..

    클린코드 3장 (함수), 4장 (주석)

    함수 - 함수를 만드는 기본 규칙은 작게 만드는 것! - 함수 내부에 if 문 등의 1단이나 2단 그 이상의 중첩 구조가 발생되면 안된다. - 함수의 활동은 한가지 그 이상을 하지마라. - switch문에 다음과 같이 한가지 작업만 해야한다는 SRP 이론과 코드의 변경이 있으면 안된다는 OCP 규칙을 위반한다. 이를 해결하기 위해서는 다형성을 이용해서 해결해야 한다. // 문제 코드 public int calEmployeePay(Employee e) { switch (e.type) { case SALARIED: return calculateSalariedPay(); case HOURLY: return calculateHourlyPay(); case ..... } } // 변경 내용 public inter..

    [토이프로젝트] TimeLine 개선

    한동안 잠시 멈췄다가 다시 열면서 내용을 추가 하고 싶었다. 타임라인의 목적은 개발에 관련 블로그 내용들과 채용 뉴스등을 한번에 보기 위해서 만든 서비스이다. 사실 내가 한번에 보고 싶은 욕구가 있어서 만들게 되었다. 그런데 채용이나 회사 블로그 뉴스등은 넣었는데 개인 블로그를 볼 수 있는 기능이 없어서 불편했는데 추가했다. 개인블로그 추가 그리고 메인 화면이 없어서 첫 화면을 설정하기가 애매했다. 그래서 메인화면도 summary해서 볼 수 있도록 추가했다. 메인화면 추가하면서 잘못된 @Transaction 어노테이션 사용으로 문제가 많았었다. 에러내용은 아래와 같다. org.hibernate.AssertionFailure: null id in entry (don't flush the Session af..

    [토이프로젝트] TimeLine 2.0 개선 오픈

    설계, 운영 모든면에서 실패토이프로젝트 TimeLine을 만들어서 오픈했었다. 개발의 목표는 단순하게 개발 블로그, 채용등에 대해 한번에 볼 수 있는 개발자를 위한 통합 페이지를 만드는 것이었다.https://wedul.site/626[토이 프로젝트 소개] 개발자 채용, 기술 블로그 정보를 모아주는 TimeLine혼자 공부를 집에서 어떻게 하면 효율적일까 고민을 많이했다. 집에서 주구장창 책을 읽고 해보면 스킬이 늘까? 그렇게 해봤지만 그게 정답은 아니었다. 남들에게는 모르겠으나 나에게는 아니었다. 회사에서 하는..wedul.site하지만 사용하는데 생각보다 불편한 부분이 많았고 설계부분에도 현재 시스템을 고려하지 않고 만들었던게 운영에 걸림돌이 되어버렸다. 그래서 서비스를 잠정적 중단하고 2.0을 만들..

    [토이 프로젝트 소개] 개발자 채용, 기술 블로그 정보를 모아주는 TimeLine

    혼자 공부를 집에서 어떻게 하면 효율적일까 고민을 많이했다. 집에서 주구장창 책을 읽고 해보면 스킬이 늘까? 그렇게 해봤지만 그게 정답은 아니었다. 남들에게는 모르겠으나 나에게는 아니었다. 회사에서 하는 업무는 한정적이니 내가 회사에서 하지 못하지만 알고 싶고 잊고 싶지 않은 내용에 대해서 프로그램을 직접 만들면서 공부할 내용을 정리하고 싶었다. 그래서 만들게 된게 타임라인인데, 개발자 채용정보나 기술 블로그를 rss등을 사용해서 모아볼 수는 있으나 별도의 관리 툴이나 브라우저에서 확인해야해서 좀 불편했다. 그래서 그것을 한번에 볼수 있게 하는 사이트가 있으면 좋을 것 같아서 만들어봤다. 우선 주소는 http://wedul.space이다. aws에 도입하고 싶었으나 비용도 걱정되니해서 집에있는 간이 서버..

    [책프협] 2019 책쓰는 개발자 책노리 방문 후기

    작년에 어떤 출판사에서 블로그 글을 보고 책을 내보는건 어떻냐고 연락이 왔었다. 겁도 나고 내가 부족하다 생각해서 답장을 하지 못했다. ㅜㅜ 조금 후회 된다. 답장이라도 한번 해볼껄. 지금까지 공부한 내용을 남들에게 설명하고 정리하면 책도 내보고 공부도 할 수 있을것 같은데 아쉽다. 나중에 또 오면 연락을 해봐야겠다. 우선 그래서 개발자들이 책을 어떻게 쓰게되고 작성하는지 알아보기 위해 책쓰는 개발자 협회에서 하는 강연에 참석했다. 참석 기념품으로 교보문고에서 제공하는 달력을 받았다. 크게 기능이 있는 달력은 아닌거 같다. 책을 작성한 개발자분들의 대다수는 처음 책을 작성할 때 내가 부족한데 가능할까? 이런 의문을 가지고 겁도 냈다고 했다. 그래도 하고나니 자신감도 붙고 그렇게 어렵지는 않다고했다. 단,..

    synology ds118에서 redis 설치하기 (패키지 센터가 아닌 직접 설치)

    synology에서 docker나 redis 등을 패키지 센터에서 설치하여 사용할 수 있다. 하지만 이상하게 저렴하게 나온 NAS, 그 중에서 x86 cpu를 사용하는 경우에는 패키지 센터에서 직접 redis를 설치할 수가 없다 ㅜㅜ 그래서 방법을 찾았다. 그 방법을 까먹지 않기 위해서 정리해보자. 1. DSM에서 SSH 허용이 부분은 아주 간단하게 DSM > 설정 > 네트워크에서 SSH 허용하여 접속을 킬 수 있다. 보안상 포트는 22가 아닌 다른 번호로 바꾸고 방화벽을 설정하는 것을 추천한다. 자세한건 검색하면 엄청 나오고 간단하다. 2. redis 다운로드redis 설치하여 운용하기 위해서 공식홈페이지에서 다운로드한다. 그리고 SFTP나 FTP 또는 단순하게 DSM에 드래그 해서 파일을 NAS에 옮..

    2018년을 마무리하고 2019년 시작하는 순간

    2018년이 마무리되는 시점이 오니 회사에서 다이어리와 캘린더 세트를 제공했다. 이전 직장에서도 이와 비슷한 상품들을 많이 받았어서 크게 기대감은 없었지만 그래도 박스도 세련되고 다이어리도 고급져서 좋았다. 내가 좋아하는 딱딱한 디자인에 커버 다이어리 두개와 펜 그리고 달력이 있었다.다이어리는 마음에 든다. 2018년에 회사를 옮기고 생각하고 기대했던 부분과는 조금 다른 부분이 많아 아쉽다.그래도 나름대로 새로운 프로젝트도 경험을 계속하고 있고 책임감도 완성도도 높아지는 것 같아서 만족스러운 부분도 있다.내가 마음에 든 다이어리와 펜을 빼고 나머지는 책장에 꼽아두었다. 2019년이 시작되기 바로전인 지금 다이어리를 받으면서 여러 생각이 들었다.너무 많은 생각을 앞서가며 걱정하니 머리만 아팠다. 크게 생각..

    로지텍 mx master 2s 잠실 롯데월드 타워 하이마트에서 구매 후기

    회사에서 사용중인 매직 마우스2가 너무 높이가 낮아서 마우스가 하나 필요했다. 집에서 사용중인 로지텍 마우스가 있지만 그건 집에서 사용해야 하니 한 사기 위해서 하이마트로 향했다.로지텍 마우스중 내 눈에 들어온건 mx master 2s와 mx anywhere 2s 인데 anywhere는 너무 높이가 낮았다. 그렇지만 가격은 mx master 2s가 너무 비쌌다. 129,000원 ㅎㄷㄷ 너무 비싸서 마다 하려 했지만 요새 야근이 많이 손목도 아프고 야근 수당이 나오니 야근수당으로 산다고 생각하고 구매했다. 제품박스는 되게 컸다.앞에 뚜껑을 열면 자석으로 붙어있고 제품 상세를 확인 할 수 있다.아주 심플하다 ㅋㅋ 유니파잉 수신기와 마우스 그리고 충전 케이블이 있다. 이 마우스는 기존에 사용중이던 마우스들과 ..

반응형