-
Notifications
You must be signed in to change notification settings - Fork 4
피어세션
youngxpepp edited this page Nov 13, 2020
·
3 revisions
25조
- J209 최창희
40조
- J032 김도호
- J132 이건홍
- TypeORM
- 배포
- 프로젝트 진행 방식
- 인증 정보 관리
- 팀원간 의견 불일치
- 테스트
트랜잭션 관리 방법
- Sequelize의 트랜잭션 사용방법은 조금 불편했음..
const transaction = await sequelize.transaction();
try{
find(..., transaction);
create(..., transaction);
}
...
return
바로 제가 원했던 그것!!
@Transactional(propagation, isolation level) // https://github.com/odavid/typeorm-transactional-cls-hooked
async updateIssue() {}
- 시퀄라이즈에 비해 코드도 굉장히 직관적이고 편리함.
타입 스크립트 없이 TypeORM을 사용할 수 있나요?
- 타입스크립트 없이 사용하면 custom repository를 사용하지 못하는 제한점이 있긴함.
const user = userRepository.create({id: 0, name: "aa"});
// new User() x
// user 내부 프로퍼티 자동완성이 돼요
연관 관계 관리 방법
- 관계 설정을 어노테이션으로 처리할 수 있음.
- eager loading & lazy loading (: Promise<Issue[]> )
const User = await userRepository.findOne(id, {relations: ["comments"]});
await userRepository.createQueryBuilder("user")
.innerJoinAndSelect("user.issues", "a")
.getMany();
- 오늘 문제가 있었던 이유? 데이터베이스 스키마 관리와 연관이 있어 보임.
- 서버에서 주기적으로 crontab git 마지막 커밋 비교?
- 커밋에 태그를 붙이면 배포가 됨
- PR에 build, 실행이 안되는 경우!!! develop
- 실제 DB 테스트 vs Mocking ?
- 서비스
- 실제로 DB에 값이 있고 원하는 값이 맞는지 비교를 진행함
- 서비스 로직에 필요한 다른 부분을 Mocking 하려면 흐름을 예상해야 하는데... 그게 불가능하다고 생각했음
- Mocking을 하게 되면 나중에 데이터가 변경됐을때 Mocking 데이터도 수정해줘야 하고 변경점이 늘어나는 것 같다.
- Mocking을 하지 않으면 의존성이 심하게 걸릴 수도 있다.
- 같이 작업 vs 각자 작업
- Squash Merge (연속적인 개발이 어려울 수 있지만, 커밋 관리가 깔끔해지고, 기능 단위로 롤백 시점을 정할 수 있다.)
-
MSA (안할거임...)
-
Typescript
-
NestJS, Koa
-
Redis 같은걸로 캐싱 적용?
-
쿠버네티스 ㅎㅎㅎㅎㅎ!!
-
도커
-
Storybook
-
5주차때는 백엔드 / 프론트 파트를 나눠서 하고 싶으신가요?
- 건홍: Yes!!