묻고 답해요
163만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결
쿠버네티스 구성 관련
안녕하세요 쿠버네티스 실무교육을 듣고 실제 실무에 활용하고자 합니다. 중요(핵심) 업무에 대한 전환을 검토하고 있어, 해당내용에 대해 의견을 듣고자합니다. 보통 중요서비스의 경우 A-A or A-S 구성을 하고 있습니다. 핵심업무 中 배치거래가 있을 경우 세션이슈가 있어 보통 A-S 구성을 합니다.다만 온라인 거래의 경우 A-A구성으로 실시간 서비스를 가능한 보증하는 형태로 하고 있습니다.다만, 이슈되는부분은 쿠버네티스의 경우 오토스케이리링, liveness proven기능이 있어 해당 구성처럼 컨테이너를 2개 띄우고 구성하는 것이 맞는지 의문이 듭니다. (*단일구성으로 하는것이 맞을지..)
-
해결됨코드로 배우는 React 19 with 스프링부트 API서버
npm start 시 이런 오류가 발생 하는데 react를 처음 접해서 구글링 해도 해결 방안을 못찾겠습니다 ㅠㅠ
기본적으로 터미널에 Starting the development server... 이 뜨고 페이지가 나오긴 하는데 무한 로딩이 걸립니다..그 후 로딩이 멈추면 콘솔창에 이런 오류가 발생합니다++기다려 보니 WebSocket connection to 'ws://localhost:3000/ws' failed: WebSocketClient @ WebSocketClient.js:13initSocket @ socket.js:27(anonymous) @ socket.js:51Show 3 more framesShow less이런 오류도 뜹니다
-
미해결김영한의 실전 자바 - 기본편
질문입니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]여기에 질문 내용을 남겨주세요. 강사님 final변수와 상수1 강의에서한글로 바꾸었을 때 커서 아래에 "한글" 이라는 문자가 보이던데 이건 어떤 앱인지 알 수 있을까요?또한 키보드는 무엇을 사용하시는지 궁굼합니다..
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
Entity 객체에 접근제어자로 protected를 사용하는 이유가 궁금합니다.
안녕하세요. 30강 강의를 수강하고 한가지 궁금한 점이 있어 질문드립니다.book 테이블에 매핑되는 Entitiy객체인 Book.java 클래스 생성 시 JPA 사용을 위해 기본 생성자를 넣어주는데 이때 접근 제어자를 protected를 사용하는 것을 확인했습니다.protected 접근 제어자가 본래 상속관계에 있는 객체에 접근할 때 쓰는 것으로 알고 있는데 BookRepository 인터페이스가 JpaRepository를 상속받고 Map 구조에 Book이 들어가서 protected를 사용하는 것인지 궁금합니다.또한 protected 접근 제어자 외에 public, default 접근 제어자를 사용해도 되는 것인지 궁금합니다.
-
미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
webflow를 django와 함께 사용하는 선택은 어떠한가요?
안녕하세요~얼마 전에야 webflow에 관해 알게 되었는데, 장고와 함께 사용하면 웹사이트를 엄청 뚝딱 만들 수 있겠다는 제 기대감과는 달리 webflow+django 조합이 많이 고려되거나 사용되지 않는 듯하더라고요. webflow와 django으로 웹페이지 만드는 선택지를 어떻게 생각하시는지 궁금합니다.
-
미해결Next + React Query로 SNS 서비스 만들기
post와 postarticle 질문있습니다.
안녕하세요.강의에서 Post 서버컴포넌트에서 PostArticle을 분리하시면서 article 하나 바꾸자고 서버컴포넌트를 클라이언트 컴포넌트로 바꾸기 아깝다고 하시면서 PostArticle 컴포넌트로 따로 분리하셨는데요, 왜 아까운건지 이유를 자세히 알고싶습니다.GPT에도 물어봤는데 이해가 잘 안가서.. 이렇게 질문드립니다ㅠㅠ 자세히 설명해주시면 정말 감사할것같습니다.
-
미해결IT입문자를 위한 전반적인 개념 정리
수료증 관련
수강완료시 수료증은 없나요?
-
미해결Three.js로 시작하는 3D 인터랙티브 웹
예제와 보여지는게 다릅니다.
위 사진은 제가 07\07\material_fin\src\ex02.js 를 실행시킨 것이고이 사진은 강의도중 보이는 화면인데 빛의 밝기가 왜 다른걸까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
RMSLE 관련 로그 함수관련 문의
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요안녕하세요? 제가 LOG 함수관련해서 조작법이 서툴러서요. RMSLE관련해서 공식을 찾아보니 아래오 같더라구요근데, 강의자료에 작성된 코딩을 보면 11sqrt(np.mean(np.power(np.log1p(y_test) - np.log1p(y_pred), 2))) 와 같습니다. 여기서 np. log1p(t_test) 이 코딩과 위에 공식이 같은건가요. +1이 여긴 반영되어 있는건지 모르겠습니다. 로그관련 설명을 좀 부탁드리겠습니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
피그마 코드가 안보여서 실습하기가 너무힘들어요
개발자도구도 안켜지고 입문자용 강의인데 눈대중으로 만들어보라는것도 좀.. 노션에라도 따로 어떤식으로 진행해야한다고 적어주셨으면 하네요 그래도 돈을 몇십만원 주고 진행하는 강의인데..
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
트랜잭션 서비스 계층에서의 문제
트랜잭션을 리포지토리 말고 서비스 계층에 달면 문제가 생기네요ㅠㅠorg.springframework.dao.InvalidDataAccessApiUsageException: No EntityManager with actual transaction available for current thread - cannot reliably process 'persist' call; nested exception is javax.persistence.TransactionRequiredException: No EntityManager with actual transaction available for current thread - cannot reliably process 'persist' call 서비스 계층서 클래스레벨에 트랜잭션 달고 실행시 이렇게 ..나오는데 레포지토리에달면 잘 동작하는데.. 서비스 계층에 달면 왜그런걸까요..
-
미해결스프링 배치
reader 에서 반복 제어를 하고 싶은데 도움 부탁드립니다.
안녕하세요. 강의보면서 따라해보고 있는데 응용이 잘되지 않아 질문드립니다. JdbcPagingItemReader, ItemProcessor, JdbcBatchItemWriter 를 사용하여 스텝을 구성하고 여러 스텝으로 잡 하나를 만들어서 배치를 돌리려고 합니다.그런데 read 하는 테이블의 데이터가 실시간으로 계속 쌓인다면 read 가 끝나지 않으므로 배치가 멈추지 않고 계속 돌게 됩니다.read 할 데이터 개수가 고정일 때는 배치가 반복되는게 어차피 read 가 끝나면 멈춰서 문제가 안됐었는데, 실시간으로 쌓이는 상황을 생각하니 모니터링 등을 고민하다가 특정 시간대에 돌리고 멈췄다가 다시 돌리는 식으로 방향을 잡았습니다.그래서 repeatTemplate 를 사용해서 특정 개수만큼만 돌리고 잡을 완료시키고 싶습니다.그리고 나머지는 이후에 다른 잡에서 하려고 합니다. 보여주신 예제는 processor 에서 반복 제어를 하였는데 저는 read 에서 무한 반복을 막고 싶은 것이라서 reader 에 넣어봤습니다. 그런데 테스트해봤을 때 반복 제어가 되지 않고 데이터 있는 개수만큼 다 돌고 끝나게 됩니다. (현재 로컬 환경에서는 실시간으로 쌓이진 않지만 중간에 repeateTemplate 조건에 맞게 끊길 수 있는 개수로 테스트했습니다.)repeatTemplate 설정을 했는데 설정이 안먹고 제대로 설정도 안된 느낌입니다.. @Configuration 파일에서 일부 코드입니다.jdbcPagingItemReader() 에 코드를 추가했습니다. @Configuration @RequiredArgsConstructor public class ReportConfig { private final DataSource dataSource; private static final int CHUNK_SIZE = 2; /** * READ TARGET */ @Bean public JdbcPagingItemReader<RequestReportTargetDto> jdbcPagingItemReader() throws Exception { // 여기서부터 RepeatTemplate repeatTemplate = new RepeatTemplate(); repeatTemplate.setCompletionPolicy(new SimpleCompletionPolicy(3)); repeatTemplate.iterate(new RepeatCallback() { @Override public RepeatStatus doInIteration(RepeatContext context) throws Exception { System.out.println("ReportConfig.doInIteration"); return RepeatStatus.CONTINUABLE; } }); // 여기까지 추가했습니다. HashMap<String, Object> parameters = new HashMap<>(); parameters.put("reqReportYn", "N"); return new JdbcPagingItemReaderBuilder<RequestReportTargetDto>() .name("jdbcPagingItemReader") .dataSource(dataSource) .fetchSize(CHUNK_SIZE) .rowMapper(new BeanPropertyRowMapper<>(RequestReportTargetDto.class)) .pageSize(CHUNK_SIZE) .queryProvider(createQueryProvider()) .parameterValues(parameters) .build(); } @Bean public PagingQueryProvider createQueryProvider() throws Exception { SqlPagingQueryProviderFactoryBean qp = new SqlPagingQueryProviderFactoryBean(); qp.setDataSource(dataSource); qp.setSelectClause("M_ID, ...."); qp.setFromClause("from TARGET_TEST"); qp.setWhereClause("where REQ_REPORT_YN = :reqReportYn"); Map<String, Order> sortKeys = new HashMap<>(); sortKeys.put("M_ID", Order.ASCENDING); qp.setSortKeys(sortKeys); return qp.getObject(); } @Bean public Step step(JobRepository jobRepository, PlatformTransactionManager transactionManager, JdbcPagingItemReader<RequestReportTargetDto> reader) { return new StepBuilder("jdbcPagingStep", jobRepository) .<RequestReportTargetDto, List<RequestReportDto>> chunk(CHUNK_SIZE, transactionManager) .reader(reader) .processor(reportProcessor) .writer(jdbcBatchListItemWriter()) .transactionManager(transactionManager) .allowStartIfComplete(true) // 테스트 위해서 .build(); } @Bean public Step step2(JobRepository jobRepository, PlatformTransactionManager transactionManager, JdbcPagingItemReader<RequestReportTargetDto> reader) { return new StepBuilder("jdbcPagingStep2", jobRepository) .<RequestReportTargetDto, List<RequestReportDto>> chunk(CHUNK_SIZE, transactionManager) .reader(reader) .processor(orgReportProcessor) .writer(jdbcBatchListItemWriter2()) .transactionManager(transactionManager) .allowStartIfComplete(true)// 테스트 위해서 .build(); } @Bean public Job job(JobRepository jobRepository, Step step, Step step2) { return new JobBuilder("reportJob", jobRepository) .start(step) .next(step2) .build(); } } reader 를 설정파일 말고 따로 클래스로 빼서 ItemWriter implements 해서 구현체로 만들어야 하나 싶은데 그러면 JdbcPagingItemReader 를 쓰기가 어려워집니다. 검색 많이 해봤는데 생각보다 참고할 수 있는 자료가 적어서 응용이 어렵습니다ㅠ참고할만한 예제가 혹시 있을까요? 아니면 어떤 식으로 하면 좋을지 알려주시면 또 찾아보고 해보겠습니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-I 2번 케이스를 해야하는 이유를 제가 잘 이해한게 맞을까요?
쌤, 강의 시간 3:36 초에서 [50만][50만] 배열을 생성하면 공간복잡도가 커서 안된다는 말씀을 듣고 그 예시를 코드로 작성해 보았습니다! (Case 2 를 해야하는 이유를 이해하기 위해서)http://boj.kr/3b3efff1b680482380e9e4a513b6ce12max 를 500으로 하면 돌긴하는데 당연히 틀리고, 50만으로 하니 컴파일 에러가 떠서 안되더라구요.. 이차원 배열 행을 "각 턴"으로 생각하였고, 열을 "위치"로 생각하여 풀었습니다.영상에서는 "수빈의 범위", "동생의 범위"라고 알려주시긴 하셨는데 같은 내용으로 이해한 것이 맞는지 궁금하였습니다!
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
이제야 양방향 연관관계를 왜 쓰는지 알겠네요..
질문은 아니고여 ㅋㅋㅋ 복습겸 다시 듣고 있는데뭐하나 알아가서 기분 좋아 올립니다.. Domain model 패턴으로 다른 강의도 그렇고 엔터티에 영한쌤 비지니스 로직이나 양방향 메서드나 생성메서드 등 꾸겨 넣으셔서 첨엔 뭔 엔터티에 저렇게 많이 넣으시나 했는데 이제서야... 연관관계 메서드를 '진짜' 왜 쓰는지 알게 됐네요.. 외래키 주인이 아닌 쪽에서는 아무리 상대방 엔터티를 지지고 볶아도 (조회 제외) db에 값이 안들어가는 것을 보고.. 1차경악.. 영한썜이 양쪽 다 세팅 후 정상적으로 돌아가는 것을 보고 2차경악...결국은 양쪽 다 값으 ㄹ세팅해줘야 하는데 그것을 어느 한곳에서 까묵지 않기 위해서 외래키 주인인쪽에서 연관관계 메서드를 작성...... 첨 들을 때 연관관계 메서드 설명해주실 떈 그러려니 햇고 와닿지 않앗는데 이제야 유레카!를 외쳣슴돠...영한쌤은 복선의 신입니다
-
미해결홍정모의 따라하며 배우는 C언어
3.1-6분
표에 나오는 십진수 정밀도란 무엇을 뜻하나요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
인텔리제이에서 실행이 안돼요
===============================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예[질문 내용]인플리제이에서 실행이 안돼요
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
2강 정수론 14252
힌트가 없다는 가정한다면,for i in range(42, 2184): 구문에다가도if i == 2183: count += 2위의 조건문을 넣어줘야겠죠?
-
미해결Verilog FPGA Program 1 (Arty A7-35T)
ifelse, 삼항연산자에 대해서 질문 있습니다.
자료를 보다 궁금한 점이 생겨 질문 남깁니다. 작성해주신 코드를 보면 삼항연산자를 많이 사용하시는 것 같습니다. 자료를 공부하면서 좋은 방법이라고 생각해서 저도 많이 사용하고 있습니다. 근데 공부하다가 삼항연산자나 ifelse구문을 많이 사용한 후 합성하게 되면 MUX로 설계되어 delay가 많아지는 문제가 생긴다는 글을 보게 되었습니다. 위의 문제가 맞다면 아래 두가지 내용이 궁금합니다. ifelse, 삼항연산자를 사용할 때 주의할 점 삼항연산자를 사용하지 않는 설계 방법
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-N 질문 있어요
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.http://boj.kr/3a71a94e910e4a2da75f16b9b380ced6 위의 코드에서 5번째 줄 즉 int solve라고 하면 왜 틀리는지 알고 싶습니다. 제가 생각하기엔 return 시 다 c로 나눈 나머지가 전달되고 그러면 c(2,147,483,647)보다 작은 값 즉 int형으로 담아내기 충분한 값이 return 될텐데 왜 long long 일 때와 달리 틀렸다고 나오는지 알고 싶습니다. 5번째 줄 int solve를 long long slove로 바꾸면 맞았다고 나옵니다. 또한 강사님의 공유 코드에서 if(b % 2)ret = (ret * a)% c;라는 부분이 9줄에 있는데 이게 아니라 if(b % 2)ret = (ret * (a % c))% c; 가 되어야 하는 거 아닌지 알고 싶습니다.
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
해시태그 검색관련 질문있습니다.
자주 질문을 드려 죄송합니다. ㅠㅠ 모르는게 많아서 ㅠㅠ그 해시태그 부분을 작업 하고 있는데 제가 해시태그를 클릭하게 되면 예를 들러 123123을 클릭을 한다 라고 하면 기존 아래에서 검색이 될시 이런식으로 해시태그가 123123만 나오고 나머지 것들은 안나오는 현상이 나오고 있습니다. 코드 같은 경우는 알려주신데로 router.get("/:hashtag", async (req, res, next) => { try { const users = req.user ? req.user.id : null; const offset = (parseInt(req.query.page) - 1) * 10 || 0 const { count, rows: post } = await Post.findAndCountAll({ offset: offset, limit: 10, // DESC 최신순 ASC 오래된순 order: [ ["createdAt", "DESC"] ], include: [ { model: Hashtag, where: { hashtag: req.params.hashtag }, attributes: ["hashtag"], through: { attributes: [] }, }, { model: Image, attributes: ["src"], },{ model: User, attributes: ["nickName"], }], attributes: [ "id", "title", "createdAt", "view", "content", // 좋아요 수 [Sequelize.literal("(SELECT COUNT(*) FROM `Like` WHERE `Like`.`postId` = `Post`.`id`)"), "count"], // 좋아요 여부 [Sequelize.literal("IF((SELECT `postId` FROM `Like` WHERE `Like`.`postId` = `Post`.`id` AND `Like`.`userId` = " + users + "), 1, 0)"), "like"], ], }) const posts = post.map((post) => { const format = post.toJSON() format.hashtag = format.Hashtags.map((tag)=>tag.hashtag) format.src = format.Images.map((img) => img.src).join("") format.nickname = format.User.nickName format.content = format.content.replace(/<[^>]+>|<img.*?>/g, ""); delete format.Images; delete format.User; delete format.Hashtags; return format; }) res.status(201).json({ count, posts }) } catch (error) { console.error(error) next(error) } })이렇게 작성을 하였는데 찾아 보니 where: { hashtag: req.params.hashtag },이렇게 작성을 하게 되면 해당 해시태그에 해당하는 게시물이 불러와 지기는 하는데 검색된 해시태그만 뽑아서 나타나지게 되니 where: { hashtag: { [Op.contains]: [`${req.params.hashtag}`] } },이런식으로 작성을 하면 된다고 해서 써봣는데 "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''asd' LEFT OUTER JOIN Images AS Images ON Post.`id` = Images.`PostId` LE' at line 1", sql: "SELECT count(`Post`.`id`) AS count FROM Posts AS Post INNER JOIN ( PostHashtag AS Hashtags->PostHashtag INNER JOIN Hashtags AS Hashtags ON Hashtags.`id` = Hashtags->PostHashtag.`HashtagId`) ON Post.`id` = Hashtags->PostHashtag.`PostId` AND Hashtags.`hashtag` <@ 'asd' LEFT OUTER JOIN Images AS Images ON Post.`id` = Images.`PostId` LEFT OUTER JOIN Users AS User ON Post.`UserId` = User.`id`;",이런 에러가 나더라구요... 왜 images에 관련된 문구가 나오는지는 모르겟지만.... 혹시 mysql에서 contains메소드가 사라진건지 아닌지 혹시 고칠수 잇는건지 궁금합니다.제 sequelize 버전은 6.35.2 입니다. ㅠㅠ