안녕하세요! 좋은 수업 항상 감사합니다!! 제가 express와 mysql을 이용해서 간단한 회원기능과 게시판 기능을 만들고 이를 docker 이미지로 만들고 있었는데, express에서 비밀번호 해시함수를 위해 bcrypt라는 라이브러리를 사용을 했습니다. 그런데 이 bcrypt에서 docker-compose up 을 하면 사진과 같은 에러가 자꾸 발생합니다. 열심히 구글링을 해봤지만 해결을 못해서 질문 올립니다... 구글링을 해보니 제 로컬 OS환경은 MAC이고 Docker는 Linux여서 이런 OS차이 때문에도 에러가 발생한다고 하더라구요. 도커 알기 쉽게 설명해주셔서 감사합니다 ㅎㅎ 에러 코드 입니다! my_server | node:internal/modules/cjs/loader:1183 my_server | return process.dlopen(module, path.toNamespacedPath(filename)); my_server | ^ my_server | my_server | Error: Error loading shared library /app/node_modules/bcrypt/lib/binding/napi-v3/bcrypt_lib.node: Exec format error my_server | at Object.Module._extensions..node (node:internal/modules/cjs/loader:1183:18) my_server | at Module.load (node:internal/modules/cjs/loader:981:32) my_server | at Function.Module._load (node:internal/modules/cjs/loader:822:12) my_server | at Module.require (node:internal/modules/cjs/loader:1005:19) my_server | at require (node:internal/modules/cjs/helpers:102:18) my_server | at Object.<anonymous> (/app/node_modules/bcrypt/bcrypt.js:6:16) my_server | at Module._compile (node:internal/modules/cjs/loader:1101:14) my_server | at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10) my_server | at Module.load (node:internal/modules/cjs/loader:981:32) my_server | at Function.Module._load (node:internal/modules/cjs/loader:822:12) { my_server | code: 'ERR_DLOPEN_FAILED' my_server | } my_server | [nodemon] app crashed - waiting for file changes before starting...
안녕하세요 강사님 :) 저는 현재 Chart.js 3.5.1 버전으로 프로젝트를 따라가는 중입니다. 그런데 아래와 같은 코드로 할 경우에 서로 다른 나라를 클릭해서 차트를 렌더링하게 되면 차트를 destroy 해야한다는 에러메세지가 뜹니다. function renderChart(data: number[], labels: string[]) { const ctx = ($('#lineChart') as HTMLCanvasElement).getContext('2d'); Chart.defaults.color = '#f5eaea'; Chart.defaults.font.family = 'Exo 2'; Chart.register( LineElement, LineController, CategoryScale, LinearScale, PointElement, Filler ); new Chart(ctx, { type: 'line', data: { labels, datasets: [ { label: 'Confirmed for the last two weeks', backgroundColor: '#feb72b', borderColor: '#feb72b', data, fill: true, }, ], }, options: {}, }); } 그래서 이를 해결하기 위해 아래와 같은 코드를 작성했더니, 제대로 렌더링이 됐습니다. 그러나 제대로된 해결 방법인지 잘 모르겠어서 질문 드립니다. casetChart라는 변수에 any 대신 Chart 인스턴스의 타입을 넣어야할거같은데, chart.js 노드모듈 폴더의 index.esm.d.ts 파일을 봤는데 어떤걸 가져와서 넣어야하는지 모르겠습니다. 그리고 아래와 같은 방식으로 destroy 하는 게 맞는 방법인지 궁급합니다. let casesChart: any; function renderChart(data: number[], labels: string[]) { const ctx = ($('#lineChart') as HTMLCanvasElement).getContext('2d'); if (casesChart !== undefined) { casesChart.destroy(); } Chart.defaults.color = '#f5eaea'; Chart.defaults.font.family = 'Exo 2'; Chart.register( LineElement, LineController, CategoryScale, LinearScale, PointElement, Filler ); casesChart = new Chart(ctx, { type: 'line', data: { labels, datasets: [ { label: 'Confirmed for the last two weeks', backgroundColor: '#feb72b', borderColor: '#feb72b', data, fill: true, }, ], }, options: {}, }); }
안녕하세요. 강의 유익하게 잘 보다 궁금증이 있어 질문드립니다. order서비스 두개와 단일db일 때, 카프카 큐잉 메시지로 처리한다면, 웹 어플리케이션 레벨에서 jpa를 사용할 경우 엔티티 영속성에 대한 이슈가 있을 수 있을거라고 생각되는데 어떻게 사용되는지 해서 질문드립니다. 또한 해당 구조에서는 jpa의 update나 insert를 사용하지 않고 무조건 큐잉메시지를 통해서 처리되어야 할 것 같은데 jpa와 연관된 복잡한 실무에서 어떻게 사용될까요?
안녕하세요. 학습과 관련된 부분은 아니고 프로젝트를 하면서 막히는 부분이 있어서 질문 드립니다. ㅠ_ㅠ 현재 .env파일을 여러 서버에 공통으로 쓰기위하여 프로젝트 밖에서 사용하려고 파일 스트럭처를 구상중에 있었습니다. ConfigModule. forRoot ({ // envFilePath: ['../../.env'], isGlobal : true , }); 현재 이런식으로 테스트 하여 해본결과 .env 파일을 가져오지 못하고 있는데. 혹시 방법 이 없을까요 ?
안녕하세요 강의를 들으며 혼자 블로그에 정리하고 있습니다. 다름이 아니라 강의 중 reset 명령어별로 이전 이력으로 돌아가는 것을 설명하는 이미지 자료가 유익한 것 같아 출처를 남기고 사용해도 되는지 궁금합니다. 추가로 요새는 git password 말고 git personal access token 을 쓰더라구요. 그 부분도 저~앞의 강의에 짤막하게나마 남겨주시면 좋을 것 같습니다. 좋은 강의 감사합니다.
안녕하세요 선생님 항상 강의 잘 보고 있습니다.! 타임리프에서의 국제화 적용은 잘 이해했습니다. 저는 현재 친구들과, 간단한 프로젝트를 진행중인데, 그 프로젝트는 백엔드와 프론트엔드를 나누어서 REST API 방식으로 데이터를 주고받습니다. 공부 목적으로 진행하는 프로젝트라, 국제화 기능을 넣어보려고 하는데 REST API 방식에서는 국제화를 어떻게 적용시켜야 하는지에 대해서는 언급이 없으셔서 혼자 코드를 작성해 보았습니다. 혹시 부족한 부분이 있거나, 잘못된 부분이 있으면 지적해주시면 감사하겠습니다. @Controller @Slf4j @RequiredArgsConstructor public class MessageController { private final MessageSource messageSource ; @GetMapping ( "/message" ) public ResponseEntity < ? > message ( Locale locale ){ String result = messageSource .getMessage ( "hello" ,null, checkLocale ( locale )) ; log .info ( "message = {}" , result ) ; return new ResponseEntity <>( result , HttpStatus. OK) ; } private Locale checkLocale ( Locale locale ){ Locale result = switch ( locale.getLanguage ()){ case "en" -> Locale. ENGLISH ; case "ko" -> Locale. KOREA ; default -> Locale. ENGLISH ; } ; return result ; } }
설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
안녕하세요, 수업을 여러번 복기 하는 중, 의문점이 생겨 질문드립니다. data_mover_bram.v 코드 중, 사진으로 첨부한 부분을 보면 만약 reset_n이 주어지지 않고 바로 data_mover가 동작하게 된다면, addr_cnt_read가 initialize가 되지 않은 상태에서 increment 동작 (addr_cnt_read <= addr_cnt_read +1)을 하게 됩니다. 따라서 코드 진행 중에 문제를 발생시킬 것 같은데, 제 생각이 맞나요? (쓰레기 값 + 1 이 되겠죠...?) 추가적으로 lab22_main.c에서 HW에게 resent_n을 주는 코드를 찾지 못하였는데, 그럼에도 잘 작동하는 이유가 무엇일까요? 감사합니다.
1. 강의자료 코드에 caret::confusionMatrix(test$y, p4) 로 코딩하셨는데 caret::confusionMatrix 도움말 설명보면 data, reference 순으로 입력하라고 합니다. 강의 설명대로 test$y, p4 만들어서 오분류표 생성했는데.. p4 중 1로 예측한 개수가 24개로 나오는데 이 개수를 바르게 예측한 입력순서는 confusionMatrix(p4, test$y)인 것 같습니다. 순서는 상관없는 것인지 알려주세요 2. ModelMetrics의 confusionMatrix와 caret의 confusionMatrix의 결과가 다르게 나오는데 무슨 차이입니까? 3. p3 <- (P1 +p2)/2 코드는 앙상블이 맞나요?
강의 초반에 "각 문자열의 길이는 서로 다릅니다"라는 조건이 있으니 그건 염두에 두지 않아도 되는 문제다 라고 하셨는데요! 만약에 "같은 문자열의 길이가 들어올 수 있다"라는 조건이고, 가장 긴 문자열 길이를 가진 것들을 모두 출력하는 문제라고 새롭게 설정해보고자 입력값 srt에 "beautiful"과 같은 길이인 "wonderful"을 추가해보고 코드를 수정해보았는데요. 답으로 "beautiful"과 "wonderful"만 나오게 하고 싶은데 "teacher","beautiful","wonderful" 이 세가지가 나오네요 ㅠㅠ 어떻게 하면 제일 긴 문자열만 중복을 허용해서 출력할 수 있을까요? function solution ( s ) { let answer = [] ; let max = Number . MIN_SAFE_INTEGER ; for ( let x of s) { if (x . length >= max) { max = x . length ; answer . push (x) ; } } return answer ; } let str = [ " teacher " , " time " , " hell " , " wonderful " , " beautiful " , " good " ] ; console . log ( solution (str)) ;
7:50 에 보면 차트를 30분 기준으로 얼러트 하시는데 BTCUSDT(바이낸스) 전략 백테스팅 2020.01.01~2021.1014로 해보니.. 30분은 10.84%, 1시간은 56.36%가 확인되었습니다. 4시간은 140.68%. 티라노님 강의 내용대로 30분에 대한 얼러트를 만들어서 활용해야 할까요?
맵리듀스 기본 튜토리얼 (1) - Map/Reduce WordCount Application 부터 보고 있는데요 처음엔 웅장한 배경음악이 나와서 재밌다고 생각했는데 웅장한 배경음악이 강의 내내 나오네요.. 선생님 목소리가 잘 안 들려요 설마 50강 전부 배경음악 깔려있나요?? ;;;;
안녕하세요 강의 잘 듣고 있습니다. Databinding 단계에서 gradle에 sync now 했을 때 까진 오류가 없이 잘 실행 되는데 layout을 작성하거나 activity에 바인딩 관련 코드를 입력 후 실행하면 오류가 나더라고요. Build 시 오류는 없다고 나오는데 제가 사진 첨부 한 것 처럼 해당 오류가 나오고 있는데 혹시 해결법이 있을까요? 구글링해서 다른 databinding 코드를 입력 해봐도 해당 사진과 같은 오류가 출력됩니다. 자바 오류 인 것 같아서 자바를 재 설치랑 안드로이드 스튜디오 캐시도 삭제해도 같은 오류가 뜨는데 방법이 있을까요?
안녕하세요. 강사님 2-11 임시반장 정하기 문제를 1. 아래와 같이 풀었는데 틀린 사유를 아직 잘 모르겠어서 질문드립니다. ㅠㅠ 시간되실 때 봐주시면 감사하겠습니다. 2. 강사님의 풀이에서 break를 붙이지 않으면 오답이 된다고 하셨는데 break가 없어도 정답은 나오지 않나요?! 조건문을 빠져나가게 하려는 건 알겠는데.. 3. 해주신 풀이 중 int [][] arr= new int [n+ 1 ][ 6 ]; 이랑 for ( int i= 1 ; i<=n; i++){ for ( int j= 1 ; j<= 5 ; j++){ arr[i][j]=kb.nextInt(); } } 에서 [6][6]이 아닌 [n+1][6]이라고 쓰신 점과 j<=n이 아닌 j<=5로 쓰신 이유도 궁금합니다.. 아는 게 별로 없어 죄송합니다ㅠ import java.util.*; class Main { public int solution(int n, int[][] arr){ int answer=0, max=0; for(int i=0; i<n; i++){ int cnt=0; for(int j=0; j<n; j++){ for(int k=0; k<n; k++){ if(arr[i][k]==arr[j][k]){ cnt++; break; } } } if(cnt>max){ max=cnt; answer=i+1; } } return answer; } public static void main(String[] args){ Main T = new Main(); Scanner kb = new Scanner(System.in); int n=kb.nextInt(); int[][] arr=new int[n][n]; for(int i=0; i<n; i++){ for(int j=0; j<n; j++){ arr[i][j]=kb.nextInt(); } } System.out.print(T.solution(n, arr)); } }
안녕하세요. 테스트코드 작성중에 의문점이 있어서 질문드립니다. 테스트 메서드마다 데이터를 비워주기 위해 setUp 메서드에 관련 로직을 넣어서 처리한 것을 확인했는데요. 아래와 같은 오류(NPE)가 발생하네요. 인증시에 오류가 발생하는 것 같은데 도저히 해결책을 못찾겠네요. MockHttpServletResponse: Status = 400 Error message = null Headers = [Cache-Control:"no-store", Pragma:"no-cache", Content-Type:"application/json;charset=UTF-8", X-Content-Type-Options:"nosniff", X-XSS-Protection:"1; mode=block", X-Frame-Options:"DENY"] Content type = application/json;charset=UTF-8 Body = {"error":"invalid_grant","error_description":"Bad credentials"} Forwarded URL = null Redirected URL = null Cookies = [] 반대로 setUp 메서드를 주석처리하고 실행하면 잘 됩니다. 메서드를 하나만 실행할때와 EventControllerTests 클래스에 있는 모든 메서드를 실행할때 모두 동일합니다. 뭔가 다른 문제가 있는걸까요?? 제가 구현했던 코드 아래 링크에서 확인 가능합니다. https://drive.google.com/file/d/1mYSWQ4EPBNiT9mIrnzAgdmVWBHlIBPXT/view?usp=sharing 바쁘시겠지만 확인해주시면 감사하겠습니다.
mac 을 사용하고 있어 XShell을 사용하지 못하여 worker node를 연결하지 못하였는데 그로인한 오류일까요?.. mac 사용자는 혹시 어떻게 연결시킬 수 있을까요? 오류 내용 : 0/1 nodes are available: 1 node(s) had taint {node-role.kubernetes.io/master: }, that the pod didn't tolerate. 감사합니다.