묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 시큐리티 OAuth2
강사님 질문있습니다
OAuth 2.0 Resource Server - MAC & RSA 토큰 검증[기본 환경 및 공통 클래스 구성]강의 편에서 JWT Filter 등록 부분입니다. JWT 필터가 어떤 AuthenticationManager를 사용할지이 메서드로 set 해주잖아요. 이떄 명시적으로 null을 넘겼는데@Bean으로 등록했으니자동주입 받음으로서 명시적 null을 무시하고스프링 컨테이너에서 가져온다고 이해하는게 맞을까요?
-
미해결
유니티 compute shader에서 convolution matrix 구현
안녕하세요. 벌써 3달째 이 작업만 계속 하고 있어요. 유니티 compute shader(hlsl)에서 convolution matrix를 구현해 가장 가까운 게임 오브젝트까지의 거리를 모드 계산후 추후 효과를 입히는데 적용하고 싶은데 무슨 이유인진 몰라도 제 코드가 너무 이상하게 돌아가요ㅠㅠㅠㅠ[numthreads(12,12,1)] void CSMain (uint3 id : SV_DispatchThreadID) { if(int(id.x) - 59 < 0 || int(id.x) + 58 >= MaxWidth || int(id.y) - 59 < 0 || int(id.y) + 58 >= MaxHeight) { //Overflow prevention. //For now, ignore screen edges. return; } float4 srcPixel = Src[id.xy]; if(any(srcPixel.rgba > float4(0,0,0,0).rgba)) { //Center of convolution matrix on opaque pixel float4 displayPixel = float4(0,0,0,0); uint visibleGameObjectCount = 0; for(int i = 0; i < GameObjectListCount; i++) { float4 colorAtDepth = ColorTextureArray.Load(uint3(id.xy, i)); if(any(colorAtDepth.rgba > float4(0,0,0,0).rgba)) { displayPixel += colorAtDepth / GameObjectListCount; visibleGameObjectCount++; } } displayPixel *= (GameObjectListCount / visibleGameObjectCount); Dest[id.xy] = displayPixel; return; } else { bool emptyMatrix = true; //Variables to store minimum distances to each game object //deltaX and deltaY added here may be negative, because it is distance from id.xy //I need separate storages for positive and negative delta //Because adding a negative index to omegaX and omegaY makes the added number go out of its bounds uint omegaX = 0; uint omegaY = 0; //Or simply store only absolute values in omegaX and omegaY, store a separate variable that represents -,- or +,+ one for x and one for y for each game object, which is similarly indexed using each game object's index //Every time omegaX and omegaY is being updated, signUnsignXY will also be updated 1 for sign, 0 for unsign uint signUnsignXY = 0; //Will be used for avg. distance calculation float indexesForDistance = 0; //Counter for visible game objects within each convolution matrix float visibleGameObjectCountMatrix = 0; //Modified logic: //Check if a pixel within the convolution matrix is opaque //If it is, start iterating through ColorTextureArray at that location(xy) //In order to compare with the previous minimum, for *every* pixel that is *opaque* within //that xy's *ColorTextureArray*, use its index to access the actual deltaX and deltaY //that belongs to that game object, and if the current value is less than the previously //update the values using: //omegaX = omegaX - ((omegaX / 100^i) % 100) + (deltaX * 100^i) //omegaY = omegaY - ((omegaY / 100^i) % 100) + (deltaY * 100^i) //When doing the actual comparison, it must be between pythagorean distances //Convolution matrix: size = 57x57(i.e. ~1.5 cm) //Caution: Proceed to read in a peaceful environment for(int i = 29; i > -28; i--) { for(int j = 29; j > -28; j--) { float4 srcPixel = Src[id.xy - int2(j, i)]; if(any(srcPixel.rgba > float4(0,0,0,0).rgba)) { emptyMatrix = false; // Dest[id.xy] = float4(1,1,1,1); //Current minimum that may or may not overwrite previous minimum //For the first current minimum, either deltaX or deltaY must > 0, since case 0 is already //taken care of above and the fact that it is visible at this location means a minimum of a GO int deltaX = -j; int deltaY = -i; //Positive by default uint signX = 1; uint signY = 1; if(deltaX < 0) { signX = 0; } if(deltaY < 0) { signY = 0; } //As long as a deltaX or deltaY exists, it's abs is guaranteed to be > 0 float minimumDistance = 1 / rsqrt(deltaX * deltaX + deltaY * deltaY); for(int c = 0; c < GameObjectListCount; c++) { float4 minimumDistancePixel = ColorTextureArray.Load(uint3(id.xy - int2(j, i), c)); //First check whether each pixel in ColorTextureArray at this location is opaque if(any(minimumDistancePixel.rgba > float4(0,0,0,0).rgba)) { //id.x + omegaX(indexed) uint previousGameObjectAccessor = (uint)pow(100, c); uint previousDeltaX = (omegaX / previousGameObjectAccessor) % 100; //id.y + omegaY(indexed) uint previousDeltaY = (omegaY / previousGameObjectAccessor) % 100; //Previous pythagorean distance float previousMinimumDistance = 0; //Problem: while 1 / (1 / x) = x for most numbers, for 0, it becomes division by 0 if(previousDeltaX > 0 || previousDeltaY > 0) { previousMinimumDistance = 1 / rsqrt(previousDeltaX * previousDeltaX + previousDeltaY * previousDeltaY); } if(previousMinimumDistance > minimumDistance) { //New minimum for game object at index c, but it has been mapped already and can be indexed with discrete values //Write new minimum in StorageTextureArray: float4 previousStoredPixel = StorageTextureArray.Load(uint3(id.xy - int2(j, i), c)); if(all(previousStoredPixel.rgba <= float4(0,0,0,0).rgba)) { StorageTextureArray[uint3(id.xy - int2(j, i), c)] = minimumDistancePixel; } //Dest[id.xy - int2(j, i)] = float4(0,0,1,1); //Update omegaX and omegaY while replacing previous deltaX and deltaY omegaX = omegaX - ((omegaX / previousGameObjectAccessor) % 100) + abs(deltaX) * previousGameObjectAccessor; omegaY = omegaY - ((omegaY / previousGameObjectAccessor) % 100) + abs(deltaY) * previousGameObjectAccessor; //Update signUnsignXY (rewrite) uint totalSign = signX * 10 + signY; signUnsignXY = signUnsignXY - ((signUnsignXY / previousGameObjectAccessor) % 100) + totalSign * previousGameObjectAccessor; //Once a mapping has been created for every visible game object, further updating indexes for distance not necessary, //because every game object that was visible at least once in the matrix will also be factored in the weighted color //computation that uses minimum distances of all game objects } //Is this valid logic to count unique game objects using this conditional? else if(previousMinimumDistance == 0) { //Very first instance of a unique game object index at xy //i.e. this if condition will run only once for each game object index //Why can the matrix detect one game object but not 2??? //This means previousMinimumDistance == 0 is true only once within the convolution matrix //Even though accessing a game object that hasn't been indexed yet must return 0 //Write new minimum in StorageTextureArray: float4 previousStoredPixel = StorageTextureArray.Load(uint3(id.xy - int2(j, i), c)); if(all(previousStoredPixel.rgba <= float4(0,0,0,0).rgba)) { StorageTextureArray[uint3(id.xy - int2(j, i), c)] = minimumDistancePixel; } //Dest[id.xy - int2(j, i)] = float4(0,1/c,0,1); //Update omegaX and omegaY without replacing with deltaX and deltaY (absolute value) omegaX += abs(deltaX) * previousGameObjectAccessor; omegaY += abs(deltaY) * previousGameObjectAccessor; //Update signUnsignX uint totalSign = signX * 10 + signY; signUnsignXY += totalSign * previousGameObjectAccessor; //Create (discrete index) to (game object index) mapping //indexesForDistance += c * pow(100, visibleGameObjectCountMatrix); //Increment this value until it becomes the maximum # of GO in matrix //visibleGameObjectCountMatrix++; //visibleGameObjectCountMatrix runs once for either case, but if one case runs, the other case doesn't //Why the fuck does this happen? visibleGameObjectCountMatrix++; } } } } } } //End of convolution matrix processing //Come up with a test: //Test for accuracy of matrix // if(visibleGameObjectCountMatrix == 0) { // //Dest[id.xy] = float4(1,0,0,1); // } //At this point, either emptyMatrix or we have all the information needed to apply to this pixel if(!emptyMatrix) { if(visibleGameObjectCountMatrix == 2) { Dest[id.xy] = float4(1,0,0,1); } //Test of whether for each xy, it properly colors the right location in StorageTextureArray // for(int i0 = 0; i0 < visibleGameObjectCountMatrix; i0++) { // uint currentGameObjectIndex = (indexesForDistance / pow(100, i0)) % 100; // //Access color // int finalDeltaX = (omegaX / pow(100, currentGameObjectIndex)) % 100; // int finalDeltaY = (omegaY / pow(100, currentGameObjectIndex)) % 100; // float pythagoreanDelta = 1 / rsqrt(finalDeltaX * finalDeltaX + finalDeltaY * finalDeltaY); // //Here, apply appropriate signs // //Fetch sign for x // if((((signUnsignXY / pow(100, currentGameObjectIndex)) % 100) / pow(10, 1)) % 10 == 0) { // finalDeltaX = -finalDeltaX; // } // //Fetch sign for y // if(((signUnsignXY / pow(100, currentGameObjectIndex)) % 100) % 10 == 0) { // finalDeltaY = -finalDeltaY; // } // float4 storageColor = StorageTextureArray.Load(uint3(id.xy + int2(finalDeltaX, finalDeltaY), currentGameObjectIndex)); // //This is supposed to color only the slime borders... // Dest[id.xy + int2(finalDeltaX, finalDeltaY)] = float4(1,0,0,1); // } //This logic seems to be problematic () //Why the fuck is the shape of all the id.xy where # of game objects found within the matrix >= 2 fucked up? //This logic must be true for a wide area? // if(visibleGameObjectCountMatrix >= 2) { // Dest[id.xy] = float4(1,0,1,1); // } // if(visibleGameObjectCountMatrix >= 2) { // //Only apply metaball effect if at least 2 game objects are within the matrix, otherwise, meaningless // float avgDistanceDelta = 0; // float totalDistanceDelta = 0; // float4 weightedColor = float4(0,0,0,0); // //Loop responsible for computing: // //1. avg distance // //2. total distance // for(uint i1 = 0; i1 < visibleGameObjectCountMatrix; i1++) { // uint currentGameObjectIndex = (indexesForDistance / pow(100, i1)) % 100; // //finalDeltaX and finalDeltaY are guaranteed to be > 0, since they were stored that way // uint finalDeltaX = (omegaX / pow(100, currentGameObjectIndex)) % 100; // uint finalDeltaY = (omegaY / pow(100, currentGameObjectIndex)) % 100; // //pythagorean delta distance // float pythagoreanDelta = 1 / rsqrt(finalDeltaX * finalDeltaX + finalDeltaY * finalDeltaY); // //Avg // avgDistanceDelta += pythagoreanDelta / visibleGameObjectCountMatrix; // //Total // totalDistanceDelta += pythagoreanDelta; // } // //Loop responsible computing weighted color // for(uint i2 = 0; i2 < visibleGameObjectCountMatrix; i2++) { // uint currentGameObjectIndex = (indexesForDistance / pow(100, i2)) % 100; // //Access color // int finalDeltaX = (omegaX / pow(100, currentGameObjectIndex)) % 100; // int finalDeltaY = (omegaY / pow(100, currentGameObjectIndex)) % 100; // float pythagoreanDelta = 1 / rsqrt(finalDeltaX * finalDeltaX + finalDeltaY * finalDeltaY); // //Here, apply appropriate signs // //Fetch sign for x // if((((signUnsignXY / pow(100, currentGameObjectIndex)) % 100) / pow(10, 1)) % 10 == 0) { // finalDeltaX *= -1; // } // //Fetch sign for y // if(((signUnsignXY / pow(100, currentGameObjectIndex)) % 100) % 10 == 0) { // finalDeltaY *= -1; // } // float4 unweightedColor = StorageTextureArray.Load(uint3(id.xy + int2(finalDeltaX, finalDeltaY), currentGameObjectIndex)); // //Why is this not contained in // //int2(finalDeltaX / 1000, finalDeltaY / 1000) // //int2(finalDeltaX, finalDeltaY) // //Dest[id.xy + int2(finalDeltaX, finalDeltaY)] = float4(1,0,0,1); // float weight = (totalDistanceDelta - pythagoreanDelta - ((visibleGameObjectCountMatrix * totalDistanceDelta - 2 * totalDistanceDelta) / visibleGameObjectCountMatrix)) / totalDistanceDelta; // weightedColor += unweightedColor * weight; // } // //Condition to decide whether or not to color current dest.xy SV_DispatchThreadID // if(avgDistanceDelta < 20) { // //Dest[id.xy] = weightedColor; // //Dest[id.xy] = weightedColor; // } // //Dest[id.xy] = float4(0,1,0,1); // //Dest[id.xy] = max(testColor0, testColor1); // Dest[id.xy] = float4(1,0,0,1); // } //else if (visibleGameObjectCountMatrix < 2) { //Dest[id.xy] = float4(1,0,0,1); //} //Dest[id.xy] = float4(1,0,1,1); // if((int)visibleGameObjectCountMatrix == 2) { // Dest[id.xy] = float4(1,0,1,1); // } //Dest[id.xy] = float4(1,0,0,1); } return; } //Test: //If storage texture array was updated properly, then //float4 testColor0 = StorageTextureArray.Load(uint3(id.xy, 0)); //float4 testColor1 = StorageTextureArray.Load(uint3(id.xy, 1)); //Dest[id.xy] = max(testColor0, testColor1); //Dest[id.xy] = testColor1; //return; }여기 테스팅 단계에서 보시다시피 매트릭스 내에서 게임 오브젝트가 2개 발견된 중앙 픽셀들을 모두 빨간색으로 칠하라고 했더니 이런 이상하고 징그러운 모양이 나오네요.저좀 도와주세요ㅠㅠ
-
미해결[코드팩토리] [입문] 9시간만에 끝내는 코드팩토리의 Javascript 무료 풀코스
선생님 좋은 강의 감사드립니다. 질문답변 부탁드려도될까요?
preventExtensions 를 하면 isExtensible이 false 가 되는건 알겠는데 그럼 다시 true 가 되게 하려면 어떻게 해야될까요??
-
미해결풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
같은 에러를 겪는 분들께.
선생님, 안녕하세요. 좋은 강의 만들어주셔서 감사합니다.제가 잘 안됐던 부분에 대한 나름대로의 찾은 해결책을 같은 상황을 겪는 분들에게 공유드리고자 합니다. 도커 이미지를 빌드할 때 pip 관련 명령어가 작동하지 않고 connection error가 발생하는 경우.다음 명령어로 도커와 서버 재부팅하기.sudo pkill dockerservice docker restartsudo reboot 서버를 정상적으로 빌드하고 포트 인바운드 설정도 잘 해주었는데 크롬 웹브라우저에서 접속이 안될 경우.엣지 브라우저로 접속해보기.이유는 모르겠지만 MS엣지 브라우저는 접속이 되는 경우가 많았습니다. 크롬브라우저만 접속이 안될 때는 한참 지나서 기다리고 나면 접속이 가능해졌습니다.
-
미해결스프링부트 JUnit 테스트 - 시큐리티를 활용한 Bank 애플리케이션
security에서 비밀번호 검증을 자동으로 해주는 걸까요?
안녕하세요 security에서 username이랑 password를 db에서 자동으로 비교해주나요?만약 소셜 로그인만 존재하는 페이지는 비밀번호를 db에 저장하지 않는데, 이 경우엔 어떤 식으로 처리해야 할까요?소셜로그인에서 로그인 성공 시 username을 받아와서 다시 security로 api호출을 해 주는 방식으로 로그인 하려고 했는데, 비밀번호가 없으니 어떻게 해야할지 모르겠습니다,,!!
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
혹시 언리얼 클라에서는 WSA Recv가 아니라 그냥 recv 사용해야 하나요?
서버랑 언리얼 연동 후 단순한 데이터 교환은 되는데, 패킷을 받아 스폰 기능을 사용하려고 하면 IsInGameThread() 라는 에러가 뜹니다. 대충 느낌을 보아하니 뭔가 외부 쓰레드? 그런 걸 차단하는 느낌이 드는데...Dispatch 해주는 워커쓰레드한테 FRunable 해줘도 해결 되지 않아서 질문 드립니다.. 혹시 다른 사람은 어떤가 싶어, 코드를 보니 서버는 IOCP를 사용하되, 언리얼에서는 그냥 recv만 사용하더군요.
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
error.massage 오류나는 이유
강의를 보고 error: error.message를 작성했는데 왜 catch(error: any) 를 작성했을 때만 에러표시가 뜨지 않는 건지 궁금합니다..!
-
미해결비전공 기획자 및 관리자를 위한 IT 필수 지식
강의 교안 부탁드립니다! (+질문)
안녕하세요 it 기획자 지망생입니다~강의 신청하여 교안 요청드립니다 ㅎㅎ메일 : kmj02040@naver.com (추가질문)저는 게임을 만드는 게임 기획자를 지향하고 있습니다그래서 해당 강의에서 이런 내용에 대해서도 도움을 받을 수 있을지 궁금합니다깃 지식 (브랜치, 리베이스, 체리픽 등 기본 기능 및 원리)..딱 그 순간만 모면하게 되고 응용이 어렵습니다 ㅜㅜ데이터 테이블 작업 (엑셀을 활용하여 json과 에셋 데이터를 변환하게 되는 작업에 대해서도 배울 수 있는지 궁금합니다)json, 에셋, 임포트, 익스포트 등 개발 관련 용어 (이 역시도 깃 관련 인것 같긴합니다)강의를 듣다가 게시판에 질문을 종종 올려도 될지도 여쭙니다
-
해결됨[Bloc 응용] 실전 앱 만들기 (책 리뷰 앱) : SNS 로그인, Firebase 적용, Bloc 상태 관리, GoRouter
페이제 갱신 문제 해결에서 버그가 있는거 같아요~
search 함수에서 result 상태만 초기화 되어서 searchOption 의 start 가 갱신이 안되는 문제가 있는거 같습니다. 위 스크린샷 처럼 searchOption 을 위와 같이 초기화 했더니 문제는 해결되었는데 맞는 방법인지 모르겠네요~
-
해결됨Node.js로 웹 크롤링하기
6-3 proxy-database 관련
sequelize-cli 까지 설치가 된거 같긴 한데... sequelize init 을 누르면 그림과 같이 오류가 떠요~ mac 에서 nvm 도 설치하고, 이것저것 계속 했는데도 잘 안됩니다. 아래 작업도 했는데도, 안돼서 진도를 3시간째 못나가고 있네요. 도움 주시면 감사하겠습니다. ㅠㅠ 정말 열심히 듣고 있는데.. ㅠ
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
이미지 파일과 첨부 파일을 같은 타입의 엔티티 콜렉션으로 사용시 발생하는 문제
안녕하세요, 배운 내용을 기반으로 스스로 개발 연습을 하고 있었습니다.Article이라는 엔티티에 본문에 첨부되어 뷰에서 보일 이미지 파일들과 버튼을 누르면 다운로드가 가능한 첨부 파일들을 동시에 넣고자 했습니다.이미지 파일과 첨부 파일은 모두 UploadFile이라는 엔티티를 사용하였습니다.서버에서 실험차 Article 엔티티를 작성해보니, 이미지 파일과 첨부 파일 리스트가 각각 적용 되는 것이 아니라 합쳐졌습니다.예를 들어 이미지 파일을 2개 등록하고 첨부 파일을 3개 등록하였으면, imageFiles와 attachedFiles List의 사이즈가 각각 2, 3개 인 것이 아니라 똑같이 5, 5개였습니다.이미지 파일과 첨부 파일이 다른 종류의 파일임에도 불구하고 결국 같은 엔티티를 공유하고 있어서 발생한 문제인걸까요?현재 생각하고 있는 해결책은 이미지 파일과 첨부 파일을 각각 다른 엔티티로 만들어서 따로 테이블을 관리하면 되겠다고 생각중입니다.하지만 혹시 이보다 더 좋거나 근본적인 해결책이 있지 않을까 싶어서 질문을 올려봅니다.두 엔티티의 코드는 다음과 같은데 혹시 다른 코드가 더 필요한 것이라면 올리겠습니다!// 게시글 엔티티 @Entity @Getter public class Article { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "article_id") private Long id; private String writer; private String title; @Lob private String content; @OneToMany(mappedBy = "article", cascade = CascadeType.ALL, orphanRemoval = true) private List<UploadFile> imageFiles = new ArrayList<>(); @OneToMany(mappedBy = "article", cascade = CascadeType.ALL, orphanRemoval = true) private List<UploadFile> attachedFiles = new ArrayList<>(); public static Article createArticle(ArticleAddForm articleAddForm, List<UploadFile> imageFiles, List<UploadFile> attachedFiles) { Article article = new Article(); article.writer = articleAddForm.getWriter(); article.title = articleAddForm.getTitle(); article.content = articleAddForm.getContent(); article.imageFiles.addAll(imageFiles); article.attachedFiles.addAll(attachedFiles); for (UploadFile imageFile : imageFiles) { imageFile.setArticle(article); } for (UploadFile attachedFile : attachedFiles) { attachedFile.setArticle(article); } return article; } } // 업로드 파일 엔티티 (이미지 파일, 첨부 파일의 엔티티로서 동시에 사용됨) @Entity @Getter public class UploadFile { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "upload_file_id") private Long id; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "article_id") private Article article; private String originalName; private String storeName; public UploadFile() { } public UploadFile(String originalName, String storeName) { this.originalName = originalName; this.storeName = storeName; } public void setArticle(Article article) { this.article = article; } }
-
미해결홍정모의 따라하며 배우는 C++
왜 안될까요 컴파일러 문제일까요?
헤더만 사용하면 항상 에러가 나는데 왜인지 잘 모르겠습니다.directory 구조는8-8_haeder - main.cpp - calc.cpp - Calc.h하지만 빌드하면 아래와 같은 에러가 뜹니다Starting build... /usr/bin/clang++ -std=c++17 -fcolor-diagnostics -fansi-escape-codes -g /Users/user/Documents/cpp/8-8_header/main.cpp -o /Users/user/Documents/cpp/8-8_header/main Undefined symbols for architecture arm64: "Calc::add(int)", referenced from: _main in main-0ed3f2.o "Calc::mul(int)", referenced from: _main in main-0ed3f2.o "Calc::sub(int)", referenced from: _main in main-0ed3f2.o "Calc::print()", referenced from: _main in main-0ed3f2.o "Calc::Calc(int)", referenced from: _main in main-0ed3f2.o ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation) Build finished with error(s).Mac m1인데 컴파일러 문제일까요?아래는 코드입니다.//calc.cpp #include "Calc.h" using namespace std; Calc::Calc(int init_value) : m_value(init_value) {} Calc& Calc::add(int value) { m_value += value; return *this; } Calc& Calc::mul(int value) { m_value *= value; return *this; } Calc& Calc::sub(int value) { m_value -= value; return *this; } void Calc::print() { cout << m_value << endl; } //Calc.h #pragma once #include <iostream> class Calc { private: int m_value; public: Calc(int init_value); Calc& add(int value); Calc& mul(int value); Calc& sub(int value); void print(); }; //main.cpp #include <iostream> #include "Calc.h" using namespace std; int main() { Calc cal(10); cal.add(10).sub(1).mul(2).print(); }
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
Quiz 코드
Quiz에 관한 코드는 따로 없을까요?
-
미해결자바 기초부터 마스터하기 with 은종쌤 (Do it 자바 프로그래밍 입문) - Part 1(기초편)
복습 문제 들은 어디서 받아 볼 수 있나요
복습 문제를 풀려고 하는데 어디로 가면 받을 수 있나요?
-
미해결디지털 포렌식 (Digital Forensic) 전문가 과정
패킷 캡처 파일이 열리지 않습니다.
섹션2 네트워크 포렌식의 기본패킷분석 단원의 실습 파일인 Port Scan.pcapng 파일이 손상되어서 열 수 없다는데 어떻게 해야 하나요? (안열려서 구글 드라이브에서 다시 다운받았는데 똑같이 에러가 뜹니다. 해당 파일만 안열리고 다른 패킷 캡처 파일은 잘 열립니다.)
-
미해결파이어베이스(Firebase)를 이용한 웹+안드로이드 메모 어플리케이션 만들기
6:35초에 하는 초기화작업에 에러뜹니다.
고수님들 해결법좀 부탁드립니다
-
해결됨일잘하는 마케터, MD에게 꼭 필요한 파이썬 데이터 분석
6강 셀레니움 module import 관련
안녕하세요 선생님! 수업 감사합니다:)6강에서 웹크롤링 코드 설명해주신 부분 관련입니다.제 연습용 콜랩 노트에서 선생님께서 공유해 주신 코드를 위에서부터 차곡차곡 붙여넣으며 실행해보던 중이었는데요.셀레니움 module import 부분에서부터 정상적으로 실행이 되지 않는 것 같습니다... 하단 오류 메시지를 어떻게 해석해야 할지 몰라, 해결방법 문의드립니다.입력한 코드################################################################################################################################################################ # 2023.07.09 셀레니움 버전업으로 인한 코드 변경 ################################################################################################################################################################ from selenium import webdriver from selenium.webdriver.chrome.service import Service from selenium.webdriver.common.by import By import time from time import sleep from bs4 import BeautifulSoup import requests import re import os # Dataframe import pandas as pd df = pd.DataFrame(columns=['idx','star','review']) service = Service(executable_path="chromedriver") options = webdriver.ChromeOptions() options.add_argument('--headless') options.add_argument('--no-sandbox') driver = webdriver.Chrome(service=service, options=options)실행 시 결과 메시지--------------------------------------------------------------------------- WebDriverException Traceback (most recent call last) <ipython-input-21-e1d24ca4db7f> in <cell line: 48>() 46 options.add_argument('--headless') 47 options.add_argument('--no-sandbox') ---> 48 driver = webdriver.Chrome(service=service, options=options) 3 frames /usr/local/lib/python3.10/dist-packages/selenium/webdriver/common/service.py in assert_process_still_running(self) 108 return_code = self.process.poll() 109 if return_code: --> 110 raise WebDriverException(f"Service {self._path} unexpectedly exited. Status code was: {return_code}") 111 112 def is_connectable(self) -> bool: WebDriverException: Message: Service /usr/bin/chromedriver unexpectedly exited. Status code was: 1
-
미해결파이어베이스(Firebase)를 이용한 웹+안드로이드 메모 어플리케이션 만들기
파이어베이스 리스트가 없다고 에러 뜹니다
파이어베이스 리스트가 없다고 에러 뜹니다
-
해결됨대세는 쿠버네티스 (초급~중급편)
Pod - QoS Classes OOM Score 질문
강사님. 먼저 좋은 강의 감사드립니다. 강의를 듣던 도중 의아한 점이 있어서 질문 드립니다.위 그림에서 Pod2의 OOM Score가 75가 맞나요? 저는 80이라고 생각합니다. 제가 잘못 생각했을까요?
-
해결됨재고시스템으로 알아보는 동시성이슈 해결방법
named lock, datasource 분리
안녕하세요. 강의를 잘 듣고 있습니다. named lock 사용 시, datasource 분리(커넥션 풀 분리)를 하는게 맞다고 하셨고이유로는 커넥션이 고갈될 수 있기 때문이라고 하셨습니다..커넥션이 고갈되는 이유라면강의에서 한 것 처럼 커넥션 풀의 커넥션 수를 늘리면 되는 것 아닌가 해서요..DB 를 분리해야하는 이유라면 납득은 되는데 단순히 동일한 DB 를 사용하는데 datasource 를 분리해야하는 것은 잘 이해가 되지 않습니다.. 이와 관련한 자세한 설명 부탁드립니다. 감사합니다.