묻고 답해요
143만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨SQL 코딩테스트를 위한 마지막 걸음
Date 강의 / leetcode 1321 질문
# [Setting] USE PRACTICE; DROP TABLE Customer; CREATE TABLE Customer (customer_id int, name varchar(20), visited_on date, amount int); INSERT INTO Customer (customer_id, name, visited_on, amount) VALUES (44, 'Ashley', '2019-01-04', 160), (23, 'Sabo', '2019-01-04', 70), (38, 'Moustafa', '2019-01-05', 90), (30, 'Halley', '2019-01-06', 140), (5, 'Elvis', '2019-01-07', 160), (12, 'Leslie', '2019-01-08', 100), (23, 'Sabo', '2019-01-08', 90), (13, 'Will', '2019-01-09', 170), (20, 'Brock', '2019-01-10', 160), (29, 'Leo', '2019-01-10', 90), (33, 'Isaac', '2019-01-11', 60), (46, 'Selena', '2019-01-12', 100), (4, 'Winston', '2019-01-13', 150), (15, 'Marti', '2019-01-13', 160); SELECT * FROM Customer;# [my practice] select b.visited_on, sum(amount) as amount, round(sum(a.amount) /7, 2) as average_amount from customer a inner join (select distinct date_sub(visited_on, interval 6 day) as week_before, visited_on from customer) b on a.visited_on between b.week_before and b.visited_on group by b.visited_on having count(amount) >= 7 order by b.visited_on;올려주신 방식 외에 inner join시 date 구간으로 조건 넣는 방식으로 시도해 보았습니다.위 데이터로 삽입하는 경우, MySQL Workbench에서는 예상 결과대로 출력 되는데 leetcode에서 오류가 나서 혹시 제가 코드 상에서 간과하고 있는 부분이 있는지 궁금해서 질문 드립니다.leetcode 내에 PostgreSQL로 유사한 방식의 해결 법은 확인했었는데 혹시나 해서 링크 올려봅니다. https://leetcode.com/problems/restaurant-growth/solutions/5040002/well-explained-postgresql-solution-beats-99
-
미해결따라하며 배우는 MySQL on Docker
물리 서버 2대로 Master/Slave 구조가 가능한가요?
강의에서는 물리 서버 1대에 Master/Slave 구조를 다뤘는데, 실무에서는 물리 서버 2대에 Master/Slave 구조로 다루는게 가능할까요?실무에서는 어떤 구조로 사용하는지 궁금합니다.
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
영상이 검정색으로 화면이 안보여요...
영상 실행은 되는데 화면이 검정색으로 뜨고 아무것도 안보여용...어제만 해도 별문제 없엇는데 확장프로그램 문제인가 해서 사파리로도 들어갔는데 똑같이 어둡게 나오네요... 혹시 다른 강의도 그런가 하고 다른분 강의 켜봤는데 그분 강의는 잘 화면이 나오고 여기 해당 강의만 어둡게나와요! 근데 아이패드로 접속해서 틀면 제대로 나오는데.. 노트북에서 보고 싶은데 해결방법이 뭘까요... 추가적으로 강력새로고침해서 캐시도 지워보고 시크릿모드에서도 해보고 다해봤는데도 같은 현상입니다. 혹시해서 확장프로그램 삭제하고 노트북도 껏다 켜봤습니닥 ㅠㅠ...
-
해결됨MySQL 성능 최적화
실무에서 prefix index를 어떤 요구사항이 있을때 사용하는지 궁금합니다!
실무 요구사항에서 blob, text, 긴 varchar와 같은 칼럼을 인덱싱하는 경우가 있을까요?당장 기억나는건 게시글 내용 검색 밖에 생각이 안나네요.. 그리고 요 아래글에 나와있는 prefix index의 한계점도 맞는 말일까요?https://stackoverflow.com/questions/31526618/mysql-prefix-index-vs-index(아래는 챗지피티가 요약해준거라 정확하지 않을 수 있습니다 ㅠ)인덱스를 통해 "가능한" 행들을 먼저 찾고, 이후 실제 데이터 행을 검색하여 추가 필터링을 수행(두 단계를 거치므로 인덱스를 사용하지 않을때보다 더 많은 시간 소요..?)2.정렬(sorting)이나 그룹화(grouping) 작업에는 사용되지 않음.ORDER BY 절을 명시적으로 사용하지 않는 한 결과의 순서는 보장되지 않음커버링 인덱스로 사용 불가
-
미해결백엔드 개발자 성능 개선 초석 다지기
EhCacheManagerFactoryBean
그레이들 추가후 EhCacheConfig 만들때 EhCacheManagerFactoryBean를 죽어도 못찼네요(Cannot resolve symbol 'EhCacheManagerFactoryBean')invalicache , rebuild , clean build 등등 해봤지만 소용이 없는데 혹시 다른데 더 체크해야할 부분이 있을까요??
-
해결됨MySQL 성능 최적화
innodb deadlock detect 비활성화 질문
https://fromdual.com/innodb-deadlock-detect-rather-hands-off요 글을 보면 페이스북과 같은 엄청난 동시성 트랜잭션을 처리하는 서버가 아닌이상 웬만하면 innodb_deadlock_detect=on으로 하는걸 권장하는 글로 보입니다. 국내 기업 한정에서 실무에선 off로 하는 경우가 있을까요? 제 생각엔 lock으로 인한 성능상 문제가 있다면 off로 하는 것 보단 아키텍처 관점(레디스 사용 등)에서 성능 문제를 해결하는게 더 좋을것 같아서요..! 저 글과 같이 off로 했을 경우 스레드의 잠금이 계속해서 쌓여서 어느순간 max_connections을 초과하게 되었다는데.. off로 할 경우 innodb_lock_wait_timeout을 줄이고 max_connections을 높여 가면서 성능 테스트를 해서 적절한 값을 세팅하는 것이 좋을까요? off로 했을 경우 성능상 큰 이점이 있는 건지 감이 잘 오지 않습니다 ㅠ 강의 자료 노션에는 practice가 있는데 영상은 없네요 ㅠㅠ 의도하신 건지 궁금합니다아
-
해결됨MySQL 성능 최적화
ssd 에선 innodb_flush_neighbors을 0으로 하면 될까요?
hdd에서 유용한것 같아서 ssd를 사용하면 1이나 2로 안해도 성능상 영향이 없는걸로 봐도 될까요?
-
해결됨MySQL 성능 최적화
innodb_buffer_pool_instances 기준 질문 드립니다
강의나 real mysql 책을 보면 os memory 기준으로 innodb_buffer_pool_instances 수를 조절하는것으로 나와있는데요.좀더 검색해보니 어디든 core 수 * 2 기준으로 하는 글도 있더라구요..!! 어떤걸 기준으로 잡아야 하는지 궁금해서 질문드립니닷 참고한 블로그https://owlyr.tistory.com/23
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
MVC vs API
아 아까 MVC와 API의 차이에 대해 질문했었는데요...제가 그럼 프론트엔드 기술 (react, vue 등)을 모르는데 혼자 화면까지 나오는 프로젝트를 진행하고 싶다면 SSR인 템플릿 엔진을 이용한 MVC패턴으로 개발하는 게 더 나을까요??그러기엔 템플릿 엔진을 사용하더라도 JS나 css는 기본적으로 할 줄 알아야 할 거 같은데 ㅜㅜ혼자서는 무리겠죠??
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
과제 5번 cannot find symbol (sequencedMap) 오류
과제 5 관련 어제자 스레드에 올려주신 파일에서DiceRollResults.java package com.group.libraryapp.day5Practice; import java.util.LinkedHashMap; import java.util.SequencedMap; public class DiceRollResults { private final SequencedMap<Integer, Integer> map = new LinkedHashMap<>(); public DiceRollResults(int maxDiceNumber) { for (int i = 1; i <= maxDiceNumber; i++) { map.put(i, 0); } } public void count(int rollResult) { int updated = map.get(rollResult) + 1; map.replace(rollResult, updated); } public SequencedMap<Integer, Integer> getMap() { return map; } } cannot find symbol (class sequencedMap) 오류가 나는데, 해결방법이 있을까요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
MVC와 API의 차이점
안녕하세요 강사님!!다름이 아니라 공부를 하다가 MVC와 API의 차이점(?)에 대해 알아보게 되었습니다!그래서 내린 결론이Spring MVC구조의 @Controller는 컨트롤러의 리턴값이 ViewResolver에 의해 해석되어서 특정 View가 html응답으로 전송된다.반면 REST API구조의 @RestController에 의한 호출은 View를 리턴하는 것이 목적이 아닌, 데이터를 전송하는 것을 목적으로 응답이 전송되어 진다.라고 내렸습니다.첫번째로, 위에서 제가 내린 결론이 맞는 말인지와두번째로, 그럼 MVC를 쓰는 경우와 API를 쓰는 경우가 언제인지가 궁금합니다.제가 아직 개념이 부족해서 그런건지는 몰라도 MVC를 쓰면 프론트엔드의 역할이 없어지는게(?) 아닌가 하는 착각이 들어서...답변 부탁드리겠습니다!!
-
미해결백엔드 개발자 성능 개선 초석 다지기
인텔리제이 EditConfiguration 옵션 추가하는 방법 [ 공유O 질문X ]
혹시나 저처럼 약간 헤매는 분들 계실까 싶어 남깁니다.스카우트 모니터링 TOOL 설치(2)에서 옵션 추가하는 방법이 Editconfiguration 들어간 다음에modify options 클릭 하고 나오는 리스트에서 Add VM Options 누르시면 옵션 추가할 수 있는 칸이 하나 나옵니다.그 곳에 노션에 있는 아래 옵션 추가해주시면 됩니다.-javaagent:/Users/..생략../study/util/scouter/agent.java/scouter.agent.jar -Dscouter.config/Users/jo-eunho/Documents/eunho/study/util/scouter/server/conf/scouter.conf -Dobj_name=demoTomcat --add-opens java.base/java.lang=ALL-UNNAMED
-
해결됨인프라공방 - 그럴듯한 서비스 만들기
서버 구성하기 미션에서 서버 실행후 요청 실패
서버 구성하기 미션을 진행중입니다.서버 실행을 하고 curl http://localhost:8080 명령어에 의해서 응답까지는 옵니다. 외부망 보안그룹에서 다음과 같이 설정했습니다.브라우저에서 요청이 가는지 확인하고https의 443 포트는 tls 설정을 하지 않으면 접속이 안되는걸로 알고 있어서브라우저에서 요청하기 위해서 80포트를 전체대역대에 대해서 열어줬습니다.인터넷 게이트웨이도 생성이 되어있고, 외부망의 라우팅 테이블에서 인터넷게이트에 대해서 전체대역대로 설정이 되어있습니다.curl명령어를 통해서 요청을 보내봤는데 connection refuesed 가 뜹니다.브라우저에서 http://3.36.115.136:80 으로 보내봤는데도사이트에 연결할 수 없음3.36.115.136에서 연결을 거부했습니다.와 같은 오류가 뜹니다.ping 체크 잘 되고port 체크에서도 telnet: Unable to connect to remote host: Connection refused 와 같은 오류가 발생합니다.어떤점을 더 체크해봐야할까요?3tier 구성하기 강의를 들으면서 진행하다가 미션을 하지 않을것을 확인하고 중간에 미션을 진행하고 있는데혹시 이점에서 문제가 있었을까요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
수료증
혹시 수료증에 수료기간도 나오나요?
-
미해결
맥북 m1칩 Mysql workbench 튕김 오류
mysql workbench를 사용하려고 합니다. 근데 최신버전(8.0.36)을 다운받으면 튕기진 않지만 인터페이스 대부분이 안보여서 사용에 불편하고 이전 버전을 다운받으면 erd 다이어그램을 만들기 위해 model를 생성하려고 +버튼을 누르면 바로 튕깁니다. 8.0.28버전까지 다 다운받아봤는데 튕김 현상이 계속 발생하네요. 무슨 문제일까요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
34강 postman에서 send 하고 status=200 -> mysql에서 조회가 안되요
포스트맨에서 등록성공후 Mysql에서 person, address 테이블 확인하면 데이타가 없거든요.근데 Mysql 팝업메뉴에서 auto-commit 을 선택하면 갱신되서 데이타 보여요. Libraryapp 테스트할때도 UI화면에서 CUD하면 Mysql에서바로 안보이고 auto-commit을 해줘야 갱신이 되드라고요.@Transactional 에서 commit 하는건지요?맞다면 왜 mysql에서 commit을 따로 해줘야 할까요..제가 mysql 툴을 안써봐서 문의드려요^^
-
해결됨SQL 코딩테스트를 위한 첫 걸음
cross join, full join강의 / leetcode 1280번 문제 질문드립니다
select a.student_id, a.student_name, a.subject_name, count(e.subject_name) attended_exams from ( select student_id, student_name, subject_name from Students, Subjects # cross join ) a left outer join ( select student_id, subject_name from Examinations ) e on a.student_id=e.student_id and a.subject_name=e.subject_name group by a.student_id, a.student_name, a.subject_name order by a.student_id, a.subject_name;해당 코드에 select 문에 있는 count(e.subject_name) attended_exams를 실행할 때,count(a.subject_name) attended_exams와 같이 cross join을 실행한 subject_name을 기준으로 실행하는 경우에는 0값이 안나오는 결과를 확인했는데 둘의 차이가 궁금합니다.
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
13강 데이터 베이스 연결문제..?
13강을 듣고 데이터베이스를 연결했는데 이름과 나이를 등록하면 둘다 빈칸으로 떠요. 터미널에서 mysql 조회해보면 이름 나이 다 잘 뜨는데 왜 그럴까요? 수정,삭제 기능도 안되구요ㅠㅠ
-
해결됨성공적인 SQL 인젝션 공격을 위한, SQL 기본 문법
case when에 count를 넣으면?
select * from members m where m.idx=(case when count(m.idx)=1 then 2 else 1 end)이렇게 하면 에러가 나오는데 이유를 모르겠네요
-
미해결[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
req.login에서 passport.serializeUser 호출 원리
passport로 로그인 실습을 진행중에 있습니다. passport.initialize(); 이후에 localStrategy 등록해둔 메서드를 통해 로그인 여부 확인하는 데까지는 까지는 이해가 되었습니다. 그런데 /controller/auth.js 에서 req.login 이후에 passport.serializeUser이 호출되는 방식이 이해가 안되네요.www.passportjs.org 에서문서를 읽어보고 있는데 꼼꼼함이 부족한지 이해가 잘 안되네요. req.login 메서드 자체를 passport에서 정의하고 있고 login 메서드가 호출될때 자동으로 serializeUser가 호출되는건가요?