이 블로그의 인기 게시물
- redis, memcached > nosql - mongodb > nosql Redis 와 Memcached 는 모두 nosql 중 key-value 형 데이터베이스로 빠른 속도가 장점인 데이터 베이스다. 메모리 데이터 저장소. 캐시 형태로 데이터를 사용한다. Memcached 는 문자열의 데이터구조만 처리한다. 백업 불가능. 메모리 재사용 Redis 는 싱글쓰레드. 스프링의 세션 클러스터링. 메모리와 디스크. 속도차이를 감수 하고도 운영적 기능에 중점 mongodb는 도큐멘트 지향 데이터 베이스로 json 데이터 구조로 저장한다. 스키마가 없다. 물리디스크에 저장. - get post put delete > http , restful - restful, msa REpresentational State Transfer, MSA(Micro Service Architecture) - 람다 vs for문 선호 하는거 > 람다는 자원소모가 크고, 일부 상황에 따라 처리 속도가 느리다. but 깔끔한 코드 스크립트 언어 기술이라 아직 자바에서는 조금 최적화가 덜 된편 - 자바 메모리관리에 대해 고민해본적잇는지 - garbage collection 아직 그렇게 큰 규모의 프로젝트는 진행하지 않아서 gc 믿고 한다. - java 1.8 특징, 자바 특징 Lambda Expression (람다표현식) Method Reference (메소드 참조) Stream (스트림) Default Method - interface의 모호함 제거 Optional - null처리 Joda Time - localdatetime - 자바 메모리영역 heap vs non-heap - git (rebase, cherrypick) merge가 브랜치 자체를 합치는 거라면 rebase 는 깃트리 관리를 위...
언뜻 듣기로 update문은 delete을 사용하는것보다 더 위험하기 때문에 사용을 지양해야 한다는 이야기를 본적이 있다. 근데 만들어 놓은 기능을 어떻게 안쓰고만 있겠나. 이걸 이리 저리 사용하는데 좀 새로이 알게된 정보들이 존재한다. 워크벤치에서 다수의 데이터가 나오게끔 update나 delete를 하면(unique값이 아닌 키값으로) safe_mode에 걸려서 에러가 뜬다. 그래서 이걸 각각 유니크 값으로 기능하게 하고 이걸 한 api 안에서 리스트로 돌려서 하는 식이 있다고 하는데, 사실 이렇게 사용안해도 자바에서는 그냥 되는경우가 있더라. 이번에 그룹원 수정_삭제 쪽을 이렇게 구현했는데, 만들고 나서 까먹고 있다가 이걸 프로시저를 사용해야 하나... 어째야하나 고민을 했는데 그냥 아무일도 없이 되고 있더라. 업데이트문 안에서 해당 테이블의 데이터를 다시 이용해서 키값을 넣을때가 있다. 이번에 날짜와 금액을 변경하는 update문을 짰었는데, 대충 아래와 같은 모양이었다. 이 때 내가 노린것은 아래의 date는 기존 tb_test 테이블의 date 값이었는데 위에서 바뀐다음에 date가 들어간 것이었다. 전체문장이 한번에 바뀌는게 아니라 위에서부터 순차대로 바뀌는 그런 순서를 가진듯 하여 3번 문장과 4번 문장의 순서를 바꿔주자 내가 의도한대로 작동하는걸 확인할 수 있었다. 지금 정산관리 쪽을 살펴보며 평소에 오류가 나면 직접 db데이터를 바꿔서 해결했던 아주 나쁜 문제들을 보고 고쳐나가고 앞으로의 해결책을 만들어야 하는데 이과정에서 update를 자주 쓰게 될것 같다. (지금 추가로 만들어 달라는 기능중에 관리자 페이지에서 데이터를 변경하게 해달라는 기능이 많다....)


댓글
댓글 쓰기