전체 글 236

[Akka.NET] Akka Message 수신 오류

akka 메시지 큐 오버플로우 Inference Window Actor에서 Message Queue가 꽉 차서 수신 못했을 가능성 높습니다. Message Buffer Size `send-buffer-size`와 `receive-buffer-size`가 너무 작은 경우에는 메시지 송수신에 문제가 발생할 수 있습니다. 이 옵션들은 TCP 송수신 버퍼의 크기를 제어하며, 충분히 큰 크기로 설정되어야 합니다. 그렇지 않으면 다음과 같은 문제가 발생할 수 있습니다 1.송신 부분에서의 문제 Send buffer size가 작으면, 송신측에서 메시지를 버퍼에 쓰는 속도가 느려질 수 있습니다. 이는 메시지를 네트워크로 전송하는 속도를 제한하고, 따라서 메시지 전송이 지연될 수 있습니다. 또한 송신 버퍼가 가득 차면 ..

[ORACLE] 시퀀스 조회/수정

*SeqNo 확인 및 설정 * --seq 'SEQ_SCAN_INDEX`의 속성 값 보기 SELECT * FROM USER_SEQUENCES WHERE SEQUENCE_NAME = 'SEQ_SCAN_INDEX'; -- `TRAIN_RES_DATA`테이블의 `TRAIN_RES_ID` max값 보기 SELECT MAX(TO_NUMBER(REGEXP_SUBSTR(TRAIN_RES_ID, '\d+'))) AS MAX_VALUE FROM TRAIN_RES_DATA; -- SEQ 값 'MAX_VALUE' 조회 SELECT MAX(SEQ_NO) FROM TRAIN_IMG_DATA; SELECT MAX(SEQ_NO) FROM TRAIN_RES_DATA; SELECT MA..

Database/ORACLE 2024.03.11

[Window] Netshare와 Proxy 기능 On/Off 배치파일

통신사에서 스마트폰 데이터 공유 제한 정책을 새롭게 발표한적이 있다. 필자는 항상 스마트폰 데이터 공유(테더링 or 핫스팟)을 사용하여 노트북을 사용하는 경우가 빈번한데, 50GB로 제한이 걸려버린 것.. 드라마, 영화, 웹서핑 조금 하다보면 50GB는 금방 동이 나버리고만다. NetShare (https://netshare.app/) NetShare라는 어플을 발견하게 됐는데, 통신사에서 제한을 걸어버리는 정책을 무시하고 무제한으로 핫스팟 사용이 가능하다. 정확한 사용법은 구글링을 해보자. 하지만 사용하기 위해선 번거로운 작업이 존재한다. 어플을 켜고 핫스팟을 활성화 시킨 후, PC의 프록시 사용설정을 사용으로 바꿔줘야 한다는 것이다. NetShare를 사용할 수 있도록 특정한 프록시 세팅이 존재한다...

Windows 2024.03.07

[Tensorflow] TF.Function

https://www.tensorflow.org/guide/function?hl=ko#%EC%B6%94%EC%A0%81 https://notebook.community/tensorflow/docs-l10n/site/ko/guide/function 추적 (Tracing) Function은 TensorFlow Graph에서 프로그램을 실행합니다. 그러나 tf.Graph는 사용자가 즉시 실행 TensorFlow 프로그램에서 작성하고자 하는 모든 요소를 나타낼 수는 없습니다. 예를 들어 Python은 다형성을 지원하지만 tf.Graph는 입력에 데이터 유형과 차원의 지정을 요구합니다. tf.Graph는 정적인 dtype과 shape 차원이 필요합니다. tf.function은 올바른 그래프를 생성하기 위해 필요하..

프로그래밍 2024.02.20

[레거시 코드 활용 전략] ch13. 변경해야 하는데, 어떤 테스트를 작성해야 할지 모르겠다

Ch13 변경해야 하는데, 어떤 테스트를 작성해야할까? 기존 레거시 코드에 대해서 테스트 코드가 전혀 없을 수 있다. 레거시 코드에 변경사항이 일어나면 테스트 루틴을 작성해야한다. 문서화 테스트 (Characterization Test) 문서화 테스트란, 기존 동작 유지에 필요한 테스트 레거시 시스템에서는 시스템이 무엇을 하는지 중요하고(결과), 어떻게 동작하는지는 중요하지 않다(과정). 어떻게 동작하는지에 대한 테스트 작성은 버그를 찾는데에 불과하다. 무엇을 하는지에 대한 테스트를 문서화 테스트라한다. 문서화 테스트 작성 순서 테스트 하네스 내에서 대상 코드를 호출 실패하는 assetion 코드 작성 실패 된 결과로부터 실제 동작을 확인 예상되는 결과를 위해(테스트 통과) 테스트 코드를 수정 반복 클래..

프로그래밍 2024.01.09

[디자인패턴] 전략패턴 (Strategy Pattern)

전략 패턴 간단한 예제 Class 구현부 namespace StrategyPattern { class Context { private IStrategy IStrategy; public Context() { } public Context(IStrategy strategy) { IStrategy = strategy; } public void SetValue(IStrategy strategy) { IStrategy = strategy; } public void DoSomething() { Console.WriteLine("context DoSomething()"); var test = IStrategy.algo(1); } } public interface IStrategy { object algo(int da..

프로그래밍 2024.01.03

[Linux] 우분투 `ll` 명령어를 찾을 수 없습니다.

ll 명령어 ll 명령어는 ls -al 명령어와 동일하다. ll 명령어를 입력했을 때, ls -al 명령어가 실행되도록 설정해주면 된다. 설정은 홈디렉터리의 .bashrc 파일에서 설정해준다. .bashrc의 내용엔 alias ll='ls -alF' 내용만 추가해주면 된다. 색상등과 같은 기타 내용등을 추가 하기위해서 아래 내용을 추가했다. * 추가 내용 보기 (클릭) * # ~/.bashrc: executed by bash(1) for non-login shells. # see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) # for examples # If not running interactively, don..

Linux 2024.01.03

[레거시 코드 활용 전략] ch12. 클래스 의존 관계, 반드시 없애야할까?

https://gist.github.com/jonnyjava/42883d4e464167f81e2ee60a488a5ded https://namhoon.kim/2022/03/22/method-test/012/ 테스트 하려는 코드에 의존관계가 존재한다면, 테스트 코드 작성이 까다로워진다. 이때마다 의존 관계를 제거해줘야하는것인가? 무조건 제거는 답이 아니다. 테스트는 세부적인 코드를 매번 해줘야하는가? 어떤 코드를 테스트를 할 때, 상위 수준의 코드에서 테스트가 커버 된다면 할 필요는 없다. 교차지점 (Interception Point) 일반적으로 변경 지점에 가까운 지점 클래스의 변경이 발생하는 곳 public class Invoice { ... public Money GetValue() { Money to..

프로그래밍 2024.01.02

[TDD] 테스트 대역 (Test double)

테스트 대역 (Test Double) 정의 xUnit Test Patterns의 저자인 제라드 메스자로스(Gerard Meszaros)가 만든 용어로 테스트를 진행하기 어려운 경우 이를 대신해 테스트를 진행할 수 있도록 만들어주는 객체를 말한다. ex) DB로 부터 조회한 값을 연산하는 로직을 구현했다고 치자. 로직을 실행하기 위해선 항상 DB를 참조하기 때문에 DB상태에 따라서 결과가 달라질 수 있다. 종류 Fake Stub Mock Dummy Spy Test Double - None product code public class ControlCenter { private readonly Car car; public ControlCenter(Car car) { this.car = car; } publi..

프로그래밍 2023.12.13