안녕하세요, 궁금한 내용이 생겨 기존에 질문들을 살펴보고 제가 이해한 것이 맞는지 확인차 질문드립니다. redis의 싱글스레드 특성으로 100개 발급에 대한 race condition 해결 --> 그러나 insert 시 DB 처리량에 부하가 발생할 수 있음 kafka 미들웨어를 통해 100개의 쿠폰 저장 이벤트를 보관해두었다가 컨슈머에서 원할때 꺼내어 처리할 수 있는 여지를 주어 처리량 부하를 분산시킬 수 있음 ex) 쿠폰 발급은 당장 안해도 되니, kafka에 이벤트만 잘 발행되어 있다면 DB 작업량이 적은 새벽에 꺼내서 저장해도 됨 이렇게 이해했는데, 맞을까요?
안녕하세요 건축도면을 화면에 표시하며 각 객체(계단,문 등)를 누르면 사양이 표시되게끔 앱을 만들 계획중입니다. 강의를 보고 화면 내에서 쓸 수 있는 작은 크기의 이미지는 문제가 없지만 도면처럼 큰 이미지는 어떻게 넣어야 할 지 모르겠습니다. 보라색 창이 화면이라고 보고 이처럼 큰 이미지를 손으로 드래그, 스와이프 해서 보려고 합니다. 정리하자면 1. 화면 사이즈보다 큰 이미지를 넣으면 화면에서 잘린 상태로 움직이지 않는 문제 2. 화면 밖으로 나간 이미지에 버튼을 넣는 방법 어떻게 해결해야 할까요?
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
장바구니가 현재 프로바이더를 통해서 불러오는 방식을 사용중인데, 이렇게 하는 경우 처음 유저가 로그아웃 하고, 다음 유저가 들어왔을 시에 프로바이더 값이 그대로 유지되어서 이전 유저의 장바구니를 열람할 수 있는 문제가 생기는데, 이런 경우를 대비해서 로그인 시에 모든 프로바이더 값들을 초기화시키고 싶은데, providerscope 안에 있는 모든 프로바이더들을 쉽게 초기화시킬 수 있는 방법이 있을까요? 감사합니다
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
코드를 따라 진행을 하시거나, 앱을 삭제하고 다시 실행하면 아래 코드위치에서 final stat = double.parse(item[regionStr]); 예외가 발생했습니다. _TypeError (type 'Null' is not a subtype of type 'String') 라는 에러가 뜨면서 흰색화면이 나타나고 좌측상단에 로딩 인디게이터만 돌아 가신다면 final stat = double.parse(item[regionStr] ?? '0'); 로 변경해주시면 앱이 정상적으로 작동 하는것을 확인했습니다. 참고하세요!
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] join을 하면 4개가 나오는데 id가 같지만 orderItems는 서로 다르게 나옵니다. 근데 왜 json에서는 orderItems 중복되서 왜 똑같이 나오는건가요? 그리고 값이 왜 orderItems는 여러개씩 출력이 되는거죠? 사실상 sql시 하나씩 setter로 들어가서 출력되지않나요? 예) "orderItems": [ { "itemName": "JPA1 BOOK", "orderPrice": 10000, "count": 1 }, { "itemName": "JPA2 BOOK", "orderPrice": 20000, "count": 2 } ] 위와 같이 orderItems가 두개가 나옵니다. 근데 sql은 하나씩 출력이 되는데 그러면 "orderItems": [ { "itemName": "JPA1 BOOK", "orderPrice": 10000, "count": 1 } ] 위와 같이 하나만 출력이 되어야하는거 아닌가요? setter로 매핑 되면 그렇지않나요?
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
Error: The plugin "google_maps_flutter_ios" requires a higher minimum iOS deployment version than your application is targeting. To build, increase your application's deployment target to at least 14.0 as described at https://docs.flutter.dev/deployment/ios Error running pod install Error launching application on iPhone 15 Pro. \ IOS에뮬 띄우는데 위와같은 에러나와요.. 구글링해봐도 뭔가 xcode에서 셋팅을하라하는거같은데 엑스코드가 익숙치않아서 힘드네요 혹시 방법이 있을까요?
안녕하세요 강의 보면서 게시판 성격의 서비스를 만들던 중에 궁금증이 생겼습니다. 두 가지 방법이 있는데, 제가 취준생이라 실제 서비스 코드들을 본 적이 없어서 어떤 방법이 조금 더 현명한 방법인지 궁금합니다! Jpa 사용법처럼 게시글과 댓글을 맵핑하는 방법입니다. 댓글에 게시글의 키만 가지는 방법입니다. 1번 코드는 대략적으로 이런 형태일 것 같습니다. @Entity public class Article{ @Id @GeneratedValue(strategy = Identity) long id; String content; } @Entity public class Comment{ @Id @GeneratedValue(strategy = Identity) long id; String comment; @ManyToOne(fetch = FetchType.LAZY) Article article; } 1번 코드의 경우에는 배울 때는 맵핑도 깔끔하게 잘 되고 좋았는데, 실제 개발을 하다 보니 댓글만 사용하는 경우에 있어서 Article의 내용은 전혀 필요가 없는 경우도 많을 것 같습니다. 또한 게시글의 댓글들을 조회 할 때, 같은 Article 내용들이 반복해서 들어 있다는 점이 마음에 걸립니다.(Lazy 하게 가져와서 문제가 없을것 같기도 하고 이 부분은 확실하지 않습니다.) 2번 코드는 게시글의 키만 가지는 경우입니다. @Entity public class Article{ @Id @GeneratedValue(strategy = Identity) long id; String content; } @Entity public class Comment{ @Id @GeneratedValue(strategy = Identity) long id; String comment; long articleId; } 2번의 경우에는 불필요한 정보를 담지 않고 필요한 경우에는 Id값으로 찾아서 가져올 수 있습니다. 하지만 article 과 Comment를 각각 따로 관리하는 형태가 됩니다.(사실 1번 코드도 따로 관리는 가능할 것 같습니다) 간단한 경우에는 1번이 좋은 것 같은데 컴포지션 되는 객체들이 많은 경우에는 그 자체로 정말 생각해야 되는 경우가 많아 지는 것 같습니다.(Comment 안에 Article, User, 첨부 파일 Entity 등등이 복잡하게 들어갈 수 있을 것 같습니다 ) 네이버 카페와 같은 사이트들의 경우에서는 게시글과 댓글을 따로 관리하는 것 같기도 하고(작성 글 보기를 누르면 삭제된 게시글 이지만 댓글 내용은 볼 수 있는 경우입니다) 실제로는 어떤 방식으로 풀어 가는지 궁금합니다!
구글로그인도 손쉽게 만들기강의에서 " 하나 이상의 Android 앱에서 SHA-1 디지털 지문과 패키지 이름 조합을 이미 사용 중입니다. 라는 오류가 뜨는데요... https://support.google.com/firebase/answer/6401008#zippy=%2C%EC%B6%A9%EB%8F%8C%ED%95%98%EB%8A%94-oauth-%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8-id%EA%B0%80-%EC%96%B4%EB%8A%90-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8%EC%97%90-%EB%93%A4%EC%96%B4-%EC%9E%88%EB%8A%94%EC%A7%80-%EB%AA%A8%EB%A6%85%EB%8B%88%EB%8B%A4 일단 구글쪽 고객센터쪽에 나온 설명보고 파이어베이스와 플러터플로우에서 해당프로젝트를 제외한 나머지 프로젝트들을 모두 삭제해봤는데도 해결되지 않고 있는데 혹시 어떤문제인지 그리고 해결방법을 알수있을까요??
[!] Network resources X A cryptographic error occurred while checking "https://cocoapods.org/": Handshake error in client You may be experiencing a man-in-the-middle attack, your network may be compromised, or you may have malware installed on your computer. 플러터 설치중 flutter doctor 을 치고 이 오류를 만났는데 window defencer 도꺼보고 다양한 보안프로그램 도 꺼봣는데 안되는데 이 문제에대해 도움이 필요합니다 검색해도 관련 오류가 없더라고요
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요! 강의 잘 듣고 있습니다. @Tansactional 어노테이션을 붙이면 private 메서드들에도 해당 어노테이션이 적용되는 건가요? 이 질문을 하는 이유는 join 메서드 안에서 validateDuplicateMember 메서드를 사용하고 있고 join은 @Transactional이 걸려있는 상태인데 이럴 경우에 어떤 게 적용되는지 궁금합니다.