본문 바로가기
반응형

2019/1210

[개발] 2019년 하반기 회고록 이전글: https://lemontia.tistory.com/910 [개발] 2019년 상반기 회고록 지금 회사에서 본격적인 프로젝트를 시작한 것은 올해부터가 아닐까 싶다. 작년 말에 들어와서 이것저것 인수인계받느라 시간을 보내기도 했고, 서버 구성이라든가 개발 방향, 문화 등을 고민했던 거에 비하면 올.. lemontia.tistory.com 올 한 해를 한 단어로 표현하면 '내실 다지기'라 할 수 있겠다. 그동안 제대로 동작하지 않았던 것들을 수정하고, 사람이 손이 덜 들어가게 자동화하는 등 최대한 내부적인 문제점을 해결하는 데 중점을 두었다. ​ 나 역시 이전 것을 수정하는 것보다는 새로운 것을 만드는 게 편하다. 하지만 시스템이라는 것이 계속 원활하게 수행되려면 지속적인 유지 보수를 해주어야 한다.. 2019. 12. 29.
[개발] 2019년 상반기 회고록 지금 회사에서 본격적인 프로젝트를 시작한 것은 올해부터가 아닐까 싶다. 작년 말에 들어와서 이것저것 인수인계받느라 시간을 보내기도 했고, 서버 구성이라든가 개발 방향, 문화 등을 고민했던 거에 비하면 올해부터는 제대로 실무를 처리해야만 했다. ​ ​ # 외주로 주던 서비스를 내재화 ​ 서비스 중에는 선불카드시스템이 연동되어 있는데, 이것은 외부에 의탁해 개발된 것이었다. 그런데 유저 수가 조금만 늘어도 서버가 출렁거렸고, 툭하면 서버가 응답을 하지 않아 애간장을 태웠다. 마침내는 서비스를 담당하는 업체에서 더 이상 서비스를 제공할 수 없겠다며 자기네 서비스를 사 가라고, 아니면 삭제해버리겠다고 협박 아닌 협박을 해댔다. 딱히 방법이 없던 터라 서비스 개발비용을 주고 사기로 결정. 처음에는 이것을 그대로 .. 2019. 12. 29.
[gitlab-telegram] gitlab 의 메세지를 telegram으로 받기 Gitlab 과 Slack의 연동은 많은데 텔레그램은 없는거 같아 추가. Integram 이라는 오픈소스에서 Trello, Gitlab, Bitbucket, Github, Webhook 등을 지원한다. 우선 아래사이트로 이동하여 중앙의 Open the @integram_bot 버튼 클릭 또는 텔레그램 프로그램을 켠 후 검색에서 @integram_bot 를 입력해 챗봇에 말을 건낸다. 사이트: https://integram.org/ Integrate Telegram into your workflow. Like Slack but more powerful and Open Source! Collaborate with pleasure using superfast and secure Telegram alongsid.. 2019. 12. 20.
[docker] 로그 logrotate 로 관리하기(주기적으로 삭제하기) docker 를 사용하면 로그가 착실히(?) 쌓이는데 이것을 주기적으로 삭제하지 않으면 서버에서 계속 용량을 잡아먹는다 특정주기를 기준으로 삭제하고 싶다면 logrotate 를 이용하면 간단하다. 우선 로그가 쌓여있는 폴더를 확인한다 cd /var/lib/docker/containers/ du -hs * 28K63d8661c74496d425c37 12G747843b4945f06735ebb crontab.daily 를 보면 logrotate 가 등록되어 있다. 그러니 logrotate 만 설정하면 된다. # 확인하기 ls /etc/cron.daily/ logrotate man-db.cron mlocate # logrotate 설정하기 vi /etc/logrotate.d/docker /var/lib/dock.. 2019. 12. 18.
[spring] jpa와 mybatis 동시 사용시 transactinoManager (multi) 설정하기(xml) 및 내부 살펴보기 현재 시스템이 2개의 TransactionManager 로 나뉘어있다. 하나는 지금까지 사용한 마이바티스 기반 TransactionManager가, 그리고 다른 하나는 앞으로 JPA로 커스터마이징 할 TransactionManager 이다. 기존의 마이바티스로 설정된 TransactionManager 의 구현클래스는 DataSourceTransactionManager 이다 그리고 JPA의 경우 구현하는 TransactionManager는 JpaTransactionManager 다 문제는 @Transactional 은 하나의 TransactionManager 를 사용한다는 점이다. 그래서 @Transactional 을 선언한 곳에서 어떤트랜잭션을 사용하느냐에 따라 어떤것은 롤백이 되고 어떤것은 롤백이 되지.. 2019. 12. 17.
[spring] LocalDateTime 주고받기(Response, Request) 데이터베이스에서 날짜데이터를 로드할 때 날짜형식의 String 형태으로 구성하여 전달하는 경우가 있다. (2019-12-14 07:00:00 과 같은 방식) 그중 마이바티스를 사용하는 경우 query를 작성할때 날짜를 format변경하여 String으로 조회하게 하여 리턴하는 경우 문제가 발생했는데, 개발자마다 누군가는 포멧팅을 하고 누군가는 포멧팅을 쓰지 않았다. 그러다보니 클라이언트가 날짜를 처리할때 통일되게 처리하지 못해 문제가 발생했었다. 그래서 이번에 LocalDateTime 형식으로 변경하면서 날짜포멧을 변경하는 작업을 정리하고자 한다. 그전에) 기존에 운영되고 있는 시스템은 spring 5.x 버전을 사용하고 있지만, 여기서는 예제 편의상 springboot 로 진행했다. Springboot.. 2019. 12. 15.
반응형