묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
vercel deploy 오류
처음에 deploy했을때 두번째 사진처럼 뜨길래 다시 deploy했더니 첫번째 사진처럼 오류가 발생합니다
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
메모리 베리어 개념이 살짝 헷갈려서 질문드립니다!
2번째 예제에서 메모리 베리어가 없으면 1) 스레드 A가 실행된다. 2) _answer = 123; 보다 _complete = true;가 먼저 실행되는 경우가 생긴다.(코드 재배치) 3) _answer = 123;이 실행되기 전에 스레드 B가 실행된다. 4) _complete = ture이므로 _answer = 0이 출력된다. 이런 순서로 프로그램이 실행 될 수도 있다는 뜻으로 이해했는데 맞나요? 메모리 베리어를 사용하면 1) 위 경우처럼 순서가 뒤바뀌는 경우가 없어진다. -> 코드 재배치 억제 2) 두 스레드가 같이 사용하는 전역변수 _answer, _complete를 Store하고 Load하는 부분을 확실하게 할 수 있다.( = 물을 내린다...?) -> 가시성 이러한 이점이 있는거구요!
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
pm2 이용해서 .env파일 삭제
1. 배포완료되고 pm2로 서버를 실행하고 나면, app.js가 이미 메모리에 .env파일을 읽어들였기 때문에 pm2덕분에 백그라운드로 노드를 실행시켜놓고 .env파일을 지울 수 있는 것 같습니다. 서버가 죽어서 pm2가 서버를 재시작시키는 경우를 제외하면 어차피 process.env에 저장되어있을테니 .env파일을 삭제시켜도 무방할 것 같은데, 맞나요? 2. 한편 .env파일을 서버에 올리지 말라고 했는데, .env값 들은 어찌되었든 서버재시작처럼 동적으로 요구되는 경우가 있을텐데 .env파일을 서버에 올려놓지 않고서 이를 어떤식으로 해결하나요?
-
미해결대세는 쿠버네티스 (초급~중급편)
auto scaling
안녕하세요. auto scaler 강의 듣다 궁금한 점이 있어 질문드립니다. pod scaler의 경우 cpu 사용율 혹은 메모리 사용율에 따른 자동 증가가 가능한걸로 이해를 했는데 혹시 cluster scaler 는 이러한 설정이 가능한지 궁금합니다. 제가 알아보니 cluster scaler를 만들어 놓더라도 노드에 더이상 파드가 할당될수없을 때 증가.라는 것말고는 pod처럼 설정하는 방법을 찾아볼수가 없었어서 질문드립니다. 감사합니다.
-
해결됨Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
port 를 일정 범위안에서 랜덤하게 하면 discoveryService 에서 port를 다르게 인지합니다.
server: port: ${random.int(10000,51000)} #0spring: application: name: my-first-serviceeureka: client: register-with-eureka: true fetch-registry: true service-url: defaultZone: http://localhost:8761/eureka instance: instance-id: ${spring.application.name}:${spring.application.instance_id:${random.value}} 위처럼 서버의 Port 를 일정 범위안에서 랜덤하게 하면 아래와 같은 현상이 발생됩니다. io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: /192.168.40.24:34968 Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException: Error has been observed at the following site(s): |_ checkpoint ⇢ org.springframework.cloud.gateway.filter.WeightCalculatorWebFilter [DefaultWebFilterChain] |_ checkpoint ⇢ HTTP GET "/first-service/welcome" [ExceptionHandlingWebHandler] Stack trace: Caused by: java.net.ConnectException: Connection refused at java.base/sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) ~[na:na] at java.base/sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:779) ~[na:na] at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:330) ~[netty-transport-4.1.63.Final.jar:4.1.63.Final] at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:334) ~[netty-transport-4.1.63.Final.jar:4.1.63.Final] at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:707) ~[netty-transport-4.1.63.Final.jar:4.1.63.Final] at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:655) ~[netty-transport-4.1.63.Final.jar:4.1.63.Final] at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:581) ~[netty-transport-4.1.63.Final.jar:4.1.63.Final] at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493) ~[netty-transport-4.1.63.Final.jar:4.1.63.Final] at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) ~[netty-common-4.1.63.Final.jar:4.1.63.Final] at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.63.Final.jar:4.1.63.Final] at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.63.Final.jar:4.1.63.Final] at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na] { "timestamp": "2021-05-12T08:33:11.458+00:00", "path": "/first-service/welcome", "status": 500, "error": "Internal Server Error", "message": "", "requestId": "fc5008c3-1" } 확인해보니 실제 first-service 에 열린 port와 discoveryService 에서 인지하는 서버가 서로 달랐습니다. 그러면 ${random.int(10000,51000)} 사용하면 안되는건가요? server: port: 0 이렇게 바꾸면 잘 됩니다.
-
미해결애플 웹사이트 인터랙션 클론!
pin을 포함한 메시지 부분의 out 처리가 안 됩니다
좋은 강의 잘 듣고 있습니다. 다른 건 잘 되는데 이상하게 scroll-section-2의 pin을 포함한 엘리먼트(messageB, C)의 opacity out과 translateY out이 적용되지 않네요. 세 시간동안 찾았는데, 결국 도움을 요청합니다. 제 소스에는 scroll-section-2의 messageA, B, C를 다르게 네이밍했으니 참고 부탁드립니다. ( messageA -> mainMessage, messageB -> descMessageA, messageC -> descMessageB, pinB -> pinA pinC -> pinB) https://github.com/redonearth/studiomeal-tutorial/tree/master/apple-clone
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
JPA가 Mybatis를 완벽히 대체 가능한가요?
주니어 개발자로 현재 SI업체에서 근무하고 있는데, 개발시 Mybatis를 사용합니다. 강의를 듣고 간단하게 JPA를 적용해서 샘플 프로젝트정도를 만들어 보았는데 개인적으로는 매우 마음에 들어서 프로젝트에도 한번 써보고 싶어서 사수에게 건의 하였으나 JPA는 간단한 CRUD에는 좋은데 실제 프로젝트에서는 통계등을 조회해야하는데 매우 많은 조인들이 들어가고 sql 쿼리만 수백줄이 되는데, 이런걸 JPA가 대체하기 어렵다. 라는 답변을 받아서 문의 드립니다. 근데 생각해보면 좀 이상한게 해외에서는 JPA가 더 많이 사용된다는데 해외에는 차트같은게 없나..? 싶은 생각이 들더라구요. 그래서 JPA가 mybatis를 완벽히 대체가 가능한건지, 아니면 둘을 병행해서 써야 하는건지 궁금합니다.
-
미해결[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발
강사님이 내주신 괴제 혹시 이거보다 더 좋은 방법이 있을까요?
<UserDaoService> public User updateByName(int id, String name){ User user = findOne(id); user.setName(name); user.setJoinDate(new Date()); return user;}이렇게 명시하였고<UserController>@PutMapping(path = "/users/{id}/{name}")public void updateUser(@PathVariable int id, @PathVariable String name){ User user =service.updateByName(id, name); if(user==null){ throw new UserNotFoundException(String.format("ID[%s] not found", id)); }}이렇게 받아서 처리하는 방식을 사용하였고 정상적으로이름이 바뀌는 것을 확인했습니다. 혹시 이 코드 말고좀 더 괜찮은 코드로 리팩토링하거나 그럴 수 있을까요?!힌트만 주셔도... 좋습니다!!항상 감사하고 수업 정말 잘 듣고 있습니다.
-
미해결따라하며 배우는 TDD 개발 [2023.11 업데이트]
통합테스트 에러 해결 방법
현재 Create 통합 테스트 작성의 통합 테스트 작성하기 까지 다 들은 상태인데요, 분명 똑같이 따라했는데 A worker process has failed to exit gracefully and has been force exited. This is likely caused by tests leaking due to improper teardown. Try running with --detectOpenHandles to find leaks. 위의 에러 메세지가 뜨더라고요.. 구글링해서 package.json에 "test": "jest --runInBand --detectOpenHandles" 이렇게 해줬는데 이렇게 하니까 이번엔 ReferenceError: You are trying to `import` a file after the Jest environment has been torn down. 이 에러가 뜹니다;; 계속 구글링해보고 있긴한데 해결이 안되서 질문 남깁니다. // test/integration/products.int.test.js const request = require('supertest'); const app = require('../../server'); const newProduct = require('../data/new-product.json'); it("POST /api/products", async () => { const response = await request(app) .post("api/products") .send(newProduct); expect(response.statusCode).toBe(201) expect(response.body.name).toBe(newProduct.name) expect(response.body.description).toBe(newProduct.description) }) // server.js const express = require('express'); // Constants const PORT = 5000; // App const app = express(); const productRoutes = require('./routes') const mongoose = require('mongoose'); const user = 'databaseuser'; const password = 'young4262'; const db = 'ttd'; mongoose.connect(`mongodb+srv://${user}:${password}@cluster0.1weod.mongodb.net/${db}?retryWrites=true&w=majority`, { useNewUrlParser: true, // 경고 문구 뜨지 않게 useUnifiedTopology: true }) .then(() => console.log('Mongodb Connected...')) .catch(err => console.log(err)); app.use(express.json()); app.use('/api/products', productRoutes) app.get('/', (req, res) => { res.send('Hello') }) app.listen(PORT, () => console.log(`Running on port ${PORT}`)); module.exports = app; // 터미널
-
미해결Vue.js 시작하기 - Age of Vue.js
props속성명칭
강의를 쉽게 잘 설명해주셔서 감사한말씀 먼저 드립니다. Vue를 처음 사용해보는 사용자로써 기존 카멜기법으로 명칭을 정하다 보니 습관이 되서 저도 모르게 소문자 대문자 섞어 쓸때가 많습니다. 혹시 props 속성 명칭은 소문자로만 구성되야 하나요? v-bind:propsdata="message" -> propsData 이렇게 하면 화면에 출력이 안되더라구요, 이게 명칭 규칙인건가요? 혹시 규칙이라면 어떤 문서를 봐야 알수 있을까요?
-
미해결윤재성의 Kotlin 기반 안드로이드 앱 개발 Part2 - 메뉴와 4대 구성요소
Kotlin Extension 관련
강좌에서 Kotlin Extension 이 사라짐?에 따라 view를 로드하는 방식이 다른 방식으로 된걸로 압니다. view binding 관련해서 내용 보강이 이뤄졌으면 좋겠습니다. 강좌처럼 바로 button등을 타이핑 했더니 에러가 발생해서 뭔가 하고 한참 서치를 했었습니다. ^^
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
Atomicity하게 만들기
interlocked 부분까지 수강하고 든 궁금증입니다. 추후에 나올 수 있으나 ㅠㅠ...... 우선 질문해보겠습니다. 원자성에 대하여 설명을 해 주실 때, 아이템 복사를 예시로 설명을 해 주셨는데요. 설명을 잘 해주셔서 쉽게 이해가 되긴하였는데 ㅠㅜ 이 아이템구매, 또는 거래에 대해서는 C# interlocked 함수로는 처리가 불가할것 같은데, (db갱신도 필요하고 소스 로직도 몇줄이나 처리될지 모르니) 이부분은 그럼 트랜잭션으로 원자성을 보존하나요? (mysql.data 에서 지원하는 트랜잭션 말씀드립니다.) 아니면 다른 방법이 있나요? + mysql을 주로 사용하는데 .data보다는 Entity 프레임웤을 추천하는 경우가 많은데, 서로 어떠한 장단점이 있나요? 저는 쿼리문에 더 익숙해 있는데 ㅜㅜ.. Entity 접근이 어렵더라구요. (물론 추후강좌에 있긴한데 (구매도하였음) 궁금해서요....)
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
Release모드로 실행해도 정상적으로 작동하면 비정상인가요....?
저는 선생님이 보여주신 부분과 어셈블리 코드가 다릅니다ㅠㅠ 2E44412h가 _stop주소인거같고, 그 안에 들어있는 값과 0 이랑 비교하는거같은데, 음... visual studio 버전이 달라서 그런건가요...?
-
미해결[인공지능 컴퓨터비전] 20장의 사진으로 딥러닝 모델 만들기
동영상 인식
동영상 인식을 하려고 합니다. 동영상 이름은 image_detection 이라면 python detect.py --source image_detection.mp4 --weights C:\Users\IMDP\Desktop\detect\yolov5-master\runs\train\exp11\weights\last.pt --conf 0.5 이러한 오류가 나옵니다. 어떻게 하면 좋을까요?
-
해결됨반응형 웹사이트 포트폴리오(Architecture Agency)
스크롤 플러그인 사용 시 모션이 적용이 안되요
학원다니면서 포폴 준비중인데 velocity 였나 그 스크롤 플러그인 사용하려고 하거든요 제가 만들려는 포트폴리오가 스크롤하면 객체들이 하나씩 따로따로 나타나는 그런 포트폴리오인데 스크롤 플러그인을 사용하면 그 모션이 적용이안되네요 제가 값을 잘못준건지 ㅜ 제이쿼리에서 사진과 같이 일정스크롤 구간이되면 active 추가되서 모션이 작동하는건데.. 거리구해서 하였는데 문제가 뭘까요..높이계산이 잘못됐나 싶어서 0.8말고 다른값들도 한번 넣어봤는데 안되네요
-
미해결1:1채팅 만들기(Android + Kotlin + Firebase)
.adapter부분이 빨간색이 떠요. 어떤게 빠진건가요?
ChatListActivity.kt package com.example.chatting_videoimport Model.UserItemimport androidx.appcompat.app.AppCompatActivityimport android.os.Bundleimport com.xwray.groupie.GroupAdapterimport com.xwray.groupie.GroupieViewHolderimport kotlinx.android.synthetic.main.activity_chat_list.*class ChatListActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_chat_list) val adapter = GroupAdapter<GroupieViewHolder>() adapter.add(UserItem()) adapter.add(UserItem()) adapter.add(UserItem()) recyclerview_list.adapter = adapter }}.adapter부분이 빨간색이 떠요. = adapter는 괜찮아요.adapter부분에 뭐가 빠져서 빨간색이 뜨는것 같아요.e: C:\Users\MS\AndroidStudioProjects\chatting_video\app\src\main\java\com\example\chatting_video\ChatListActivity.kt: (21, 27): Unresolved reference: adapterUserItem.kt package Modelimport android.content.ClipDataimport com.example.chatting_video.Rimport com.xwray.groupie.GroupieViewHolderimport com.xwray.groupie.Itemclass UserItem : Item<GroupieViewHolder>() { override fun getLayout(): Int { return R.layout.message_list_row } override fun bind(viewHolder: GroupieViewHolder, position: Int) { }}activity_chat_list.xml <?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/recyclerview_list" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".ChatListActivity"> <androidx.recyclerview.widget.RecyclerView android:layout_width="344dp" android:layout_height="572dp" android:layout_marginStart="20dp" android:layout_marginLeft="20dp" android:layout_marginTop="40dp" android:layout_marginEnd="20dp" android:layout_marginRight="20dp" android:layout_marginBottom="40dp" app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.761" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.632" /></androidx.constraintlayout.widget.ConstraintLayout>
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
postman 무한 Sending request...
삭제된 글입니다
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
TaskCreationOptions.LongRunning에 관해 질문 있습니다!
위에 다른분이 TaskCreationOptions.LongRunning에 관한 질문한 글을 봤습니다. 거기서 선생님이 하신 말씀으로는 "LongRunning 설정 시 그냥 새로운 쓰레드를 생성하게 됩니다." 라고 하셨고 아래 링크를 달아주셔서 확인해 봤습니다. https://stackoverflow.com/questions/10298641/is-it-true-that-for-long-running-processes-it-is-better-to-do-thread-manually-in 링크는 이거였고, 답글중에 ThreadPool thread is lightweight and cheap since could be rescheduled to serve a new request from the ThreadPool, so as soon as thread operation is done, ThreadPool could reschedule the same thread for other operation. 라는 답변이 있었는데요, 새로운 쓰레드를 생성하는게 아니라 스레드를 스케줄링한다(?) 라는 개념으로 해석되는데 어느것이 맞는건가요? 질문을 좀 요약하면 아래와 같을 것 같습니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
mysql을 사용해도 되나요?
삭제된 글입니다
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part2: 자료구조와 알고리즘
Room<T> Next;
class Room<T> { public T Data; public Room<T> Next; public Room<T> Prev; } 이 클래스에서 Next의 주소 값과 Prev의 주소값이 실제로 다른가요?