프로그래밍 150

[Python] csv파일 읽은 후 list생성하기

python에서 csv파일을 읽은 후 list생성해봅시다csv 파일 내용csv 읽은 후 리스트 생성 및 특정 값을 출력해봅시다. csv파일 label class 0 100 1 101 2 102 3 103 4 104 0 200 1 201 2 202 3 203 4 204 5 205 6 206 7 207 8 208 9 209 10 210data type 정의 후 2번째 값 출력 import csv class DataEntry: def __init__(self, step_oh_name, step_oh, gt_name, gt_label, class_id): self.step_oh_name = step_oh_name self.step_oh = step_oh self.gt_name = gt_name self.gt_l..

[RabbitMQ] 스트림

RabbitMQ Stream https://github.com/rabbitmq/rabbitmq-stream-dotnet-client docs : https://rabbitmq.github.io/rabbitmq-stream-dotnet-client/stable/htmlsingle/index.html RabbitMQ Stream .Net Client는 RabbitMQ Stream Plugin과 통신하기 위한 .Net 라이브러리입니다. Stream 장점 Large fan-outs 여러 애플리케이션이 동일한 메시지를 읽어야 할 때 유용합니다. 기존의 큐를 사용하면 각 애플리케이션마다 큐를 선언하고 각각에게 동일한 메시지의 복사본을 전달해야 합니다. Stream은 여러 소비자가 동일한 큐에서 동일한 메시지를 비파..

[RabbitMQ] 클러스터 구성하기 - Linux

RabbitMQ 클러스터 구축하기 - Linux 1. RabbitMQ 설치 모든 노드에 RabbitMQ, Erlang을 설치합니다. 2. RabbitMQ 서버 구성 각 노드의 RabbitMQ 서버 구성을 위해 해당 노드에 접속합니다. rabbitmq.config 파일을 열고 노드 이름, Erlang Cookie 및 클러스터링 구성을 추가합니다. Docker Images mirero@ADC40-TEST-03:~$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE rabbitmq 3-management 87d31604e8cf 5 weeks ago 275MB Docker Container 실행 (RabbitMQ 서버 시작) Node 3개 구성합니다. 각 Node는 ho..

[Python] 기본문법 __init__ 과 Self

함수 아래와 같은 포맷으로 함수를 생성한다.def ([]): 예제 def main(): print("Start Main()") func_something(1,2,3) def func_something (a,b="default",c="default2"): // function context return print(f"{a}{b}{c}"); init 생성자와 비슷한 성격을 지님 컨스트럭터라고 불리는 초기화를 위한 함수 객체 생성 및 인스턴스화, 초기화를 할 때 해당 함수에서 진행한다. 반드시, 1번째 파라미터는 self를 지정 클래스를 생성할 때에 초기화할 변수는 2번째 파라미터부터 입력 init의 객체를 다른 함수에서 호출할 때 self를 사용해야한다. 예제 class MyStatus: def __init..

[C#] IEnumerable

IEnumerable IEnumerable 인터페이스는 .NET에서 컬렉션을 나타내는 데 사용되는 인터페이스로, 컬렉션을 반복(iterate)하고 열거할 수 있는 기능을 제공합니다. 컬렉션의 열거를 위해 일반적으로 사용되는 인터페이스입니다. 지연된 실행 (Lazy Execution): IEnumerable은 지연된 실행을 지원합니다. 이는 컬렉션의 요소가 실제로 필요한 순간에만 생성되고 처리되는 것을 의미합니다. 따라서 모든 데이터를 미리 메모리에 로드할 필요가 없으며, 필요한 요소만 처리하여 효율성을 높일 수 있습니다. 메모리 관리 및 성능 최적화: 대용량 데이터셋의 경우, 모든 데이터를 한 번에 메모리에 로드하는 것은 메모리 부족 문제와 성능 저하를 초래할 수 있습니다. IEnumerable을 사용하..

프로그래밍/C# 2023.08.24

[Akka.NET] Stash

Akka.NET - Stash Stash 기능은 행위자 내에서 메시지를 임시로 저장하고 연기하는 메커니즘을 제공합니다. 이를 통해 액터는 아직 처리할 준비가 되지 않은 들어오는 메시지를 일시적으로 따로 보관하고 액터가 적절한 상태에 있을 때 나중에 검색할 수 있습니다. Stash 기능은 메시지 처리 순서나 액터의 동작을 제어해야 하는 시나리오에서 유용합니다. 이 예제에서 MyActor에는 Ready() 및 Processing()의 두 가지 상태가 있습니다. 처음에는 Ready() 상태에서 시작합니다. Ready() 상태에서는 StartProcessing에서 메시지를 즉시 처리하거나, 나중에 처리하기 위해 DelayProcessing에서 메시지를 숨길 수 있습니다. DelayProcessing 메시지가 수..

[Akka.NET] Receive()와 ReceiveAny()

Akka.NET - Receive() Receive() 메서드는 알려진 메시지 유형에 대한 특정 메시지 처리기를 정의하는 데 사용됩니다. 특정 메시지 유형과 일치하는 일련의 case 문을 제공하고 각 사례에 해당하는 작업 또는 동작을 지정합니다. 메시지가 수신되면 Akka.NET은 메시지 유형을 정의된 사례와 일치시키고 적절한 핸들러를 호출합니다. 이 예제에서 액터에는 Receive()를 사용하여 정의된 세 가지 특정 메시지 핸들러가 있습니다. 특정 유형의 메시지가 수신되면 해당 핸들러가 호출됩니다. Receive() 샘플코드 Receive(message => { // Handle string messages }); Receive(message => { // Handle int messages }); R..