파이썬 소켓 3

[Python] 파이썬 멀티 스레드 채팅 서버 만들기 - 2

기본 코드에 조금 더 살을 붙여서 CLI환경에서 단채 채팅방 환경을 구축했다. 아직 최적화시킬 부분도 남았고, slack처럼 늦게 들어와도 채팅방의 기록을 볼 수 있게 구축하고 싶기 때문에 시간이 남으면 세 번째 작업도 진행할 예정이다. 서버 코드 import socket import argparse import threading import time host = "127.0.0.1" port = 4000 user_list = {} notice_flag = 0 def msg_func(msg): print(msg) for con in user_list.values(): try: con.send(msg.encode('utf-8')) except: print("연결이 비 정상적으로 종료된 소켓 발견") def..

[Python] 파이썬 멀티 스레드 채팅 서버 만들기 - 1

N사 최종 면접 후 멀티 스레드에 대한 이론은 있지만 실전에 약하다는 느낌을 받았다. 아무래도 멀티 스레드 환경에서 프로그래밍을 할 경험이 없어서 더 그런 것 같다. 그! 래! 서! 혼자서라도 멀티 스레드 채팅 서버를 구축해보는 프로젝트를 진행하려고 한다. 기본 코드 Python 게시판에 올려두었던 서버, 클라이언트 코드를 조금 변조해서 뼈대가 될 코드를 작성하였다. - 서버 코드 import socket import argparse import threading import time host = "127.0.0.1" port = 4000 user_list = {} notice_flag = 0 def handle_receive(client_socket, addr, user): while 1: data =..

[Python] 멀티 스레드 소켓 서버 구축하기

내가 한 번도 경험하지 못했던 "멀티 스레드 서버 프로그래밍"을 시작하기에 앞서 뼈대가 될 코드를 만들었다. 서버 코드 import socket import argparse import threading import time host = "127.0.0.1" port = 4000 def handle_client(client_socket, addr): print("접속한 클라이언트의 주소 입니다. : ", addr) user = client_socket.recv(1024) string = "안녕하세요? %s 님"%user.decode() client_socket.sendall(string.encode()) print("1초 후 클라이언트가 종료됩니다.") time.sleep(1) client_socket...