server | v3 switch to v4  

Photon 3.4

  • SDK: 3.4.13.5874
  • 릴리즈일: 2014-02-19
  • Photon Native Core v.3.4.1.2521

Photon Native Core V.3.4.1.2521

신규

  • PSCS-1415: 재배포 가능(재배포 라이선스가 있는) 한 Photon SDK
  • PSCS-1761: Photon 에서 RHTTP 지원
  • PSCS-1715: "ENet 클라이언트 타임아웃 연결해제" 성능 카운터 추가
  • PSCS-1538: Native 정책 리스너로 정책 파일 처리 (정책 어플리케이션이 더 이상 필요 없음)
  • PSCS-1689: TCP 리스너의 모든 초기 연결 헤더에 설정할 수 있는 프리픽스/서픽스 지원
  • PSCS-1804: 디폴트 셧다운 타임아웃 30 초
  • PSCS-1701: Photon 셧다운 타임아웃 추가, 시간내에 셧다운이 실패되면 ExitProcess 호출을 하게 됩니다.
  • PSCS-1692: 어플리케이션 시작/재시작/셧다운 타임아웃 추가
  • PSCS-1612: 신규 타이머 큐 성능 카운터
  • PSCS-1383: exe 파일과 동일한 디렉토리에 있는 config 파일(photonsocketserver.exe.config) 지원 .
  • PSCS-1418: 피어가 아직 존재하지 않는데도 불구하고 호출되는 tcp 리스너의 타임아웃의 "AbortConnection()" 추가 - 정책 연결들을 끊을 수 도 있습니다.(피어에 대해서는 아닙니다)

Back To Top

변경

  • PSCS-1500: Photon 네트워크 상의 주요 변경
  • PSCS-1420: 수많은 브로드캐스팅 개선
  • PSCS-1391: PhotonControl: 공용 IP 찾기 개선
  • PSCS-1795: Photon 시작 실패시 에러 리포트에 .NET 버전 문자열 추가
  • PSCS-1646: 새로운 바이너리 프로토콜 지원을 위한 최대 프로토콜 버전 번호를 1.7 로 증가
  • PSCS-1536: "Disconnected Peers (S)" 누수 방지하기 위한 변경
  • PSCS-1537: 흐름 제어 동안에 "auto nagle" 누적 제거
  • PSCS-1468: 피어의 주소를 주소상에 잠재적인 참조 카운터 누수를 피하기 위한 관리 방법 변경
  • PSCS-1243: S2S MUX 흐름 제어 자동 tune 으로 변경
  • PSCS-1383: 새로운 v4 CLR 메소드로 strong name 인터페이스를 얻으려고 할 때 사용할 수 없는 Photon 런타임인 경우 최근의 런타임 가능한 로딩으로 실패 합니다.

Back To Top

보완

  • PSCS-1703: ENet 흐름 제어 버퍼의 레이지(Lazy)할당. 가동되지 않은 UDP 피어들이 많은 양이 있는 경우 "메모리 부족" 예외 방지.
  • PSCS-1779: 셧다운시 행
  • PSCS-1822: UDP: 예외를 던지고 피어를 연결하는 대신 잘못된 recv sent ACK 시간만이 기록되었습니다.
  • PSCS-1797: 버퍼 얼라인먼트 이슈
  • PSCS-1693: 시작 실패시 Photon 종료 코드들
  • PSCS-1752: 모든 "포트" 설정 엔트리들은 이제 short 가 아닌 unsigned short 로 읽혀집니다...
  • PSCS-1751: ENet: 피어 생성자가 더 안정적 입니다
  • PSCS-1431: ENet: 피어를 생성하는 동안과 피어 연결해제시 실패가 올바르게 처리됩니다.
  • PSCS-1633: 셧다운시 프로세스 행을 가진 접근 위반
  • PSCS-1456: MUX: 물리적 연결이 끊어졌을 때 논리적인 연결이 어떻게 조정되어 클린업 됩니다.
  • PSCS-391: "unimportant" 예외의 로깅 제한, 기록을 가능하도록 설정 옵션 "LogUnimportantExceptions" 추가.
  • PSCS-1695: FatalRuntime 의 크래시 덤프 추가,OPR_ProcessExit 는 더 이상 덤프되지 않습니다.
  • PSCS-1691: OPR_AppDomainRudeUnload 정책 타임아웃 추가록 이제 eDisableRuntime 이 트리거 됩니다 (Photon 셧다운을 깔끔이 해주도록 트리거 됩니다).
  • PSCS-1651: TCP: 흐름 제어 이슈 수정
  • PSCS-1456: MUX: 인입 mux 피어 누수와 크래시 수정.
  • PSCS-1600: 버퍼 누수의 원인이 되는 연결해제된 피어 누수 이슈 보완.
  • PSCS-1608: 카운터 문제 해결.
  • PSCS-1540: ENet 예외: "Command 길이: 0 0 또는 사용할 수 있는 데이터보다 더 많습니다"
  • PSCS-1610: 웹소켓: 아웃바운드 데이터 변질 보완
  • PSCS-1609: 웹소켓: 아웃바운드 데이터 메모리 접근 보완
  • PSCS-1603: 아웃바운드 데이터그램 연결에서의 소켓 누수.
  • PSCS-1591: 이제 TCPPing 이 올바른 서버시간을 리포트 합니다.
  • PSCS-1542: 흐름 제어: 자동 흐름 제어 큐 통합 추가
  • PSCS-1560: 락 도치와 Photon 프로세스가 행에 걸릴 수 있는 원인인 락 제거.
  • PSCS-1467: 셧다운시 "순수 가상 함수 호출" 오류
  • PSCS-1243: MUX: 피어들에 흐름 제어 상태 이벤트를 전달 합니다.
  • PSCS-1502: 어플리케이션 재시작시 락 도치 보완 (데드락 원인)
  • PSCS-1470: 셧다운시 크래시 원인이 될 수 있는 경합조건 제거.
  • PSCS-1372: 연결 제한에 도달 했을 때 크래시가 발생할 수 있는 점 보완
  • PSCS-1263: 다음에 사용하기 위한 소켓 접속시 바로 연결 포트와 캐시 획득.
  • PSCS-1651: TCP 흐름 제어 보완
  • PSCS-1603: 펜딩된 "사용하고 있는 소켓" 에 의한 메모리 누수
  • PSCS-1456: MUX: 물리적 연결성립/종료 경합조건 접근 위반 버그 수정.
  • PSCS-1418: eNet 연결 타임아웃 연결해제 카운터에 잔여하고 있었던 카운트 버그.
  • PSCS-1575: 연결해제 후 매니지드 코등 의해서 TCP 클라이언트들이 정상적으로 연결해제 되지 않았습니다.
  • PSCS-1499: MUX: 일부 락 도치 제거
  • PSCS-1355: CLR 사용할 수 없을 때 Photon 행(hang)

Back To Top

PhotonControl

Back To Top

신규

  • PSCS-1799: .NET Framework 3.5 또는 이후 버전이 설치되어 있는지 체크 (다른 경우에는 메시지 박스를 표시합니다)
  • PSCS-1398: 로그 파일을 오픈하기 위한 baretail cmd 의 선택적인 사용
  • PSCS-1076: 로드밸런싱 환경설정의 로컬 IP 모두를 표시
  • PSCS-1391: Photon 재배포의 런처 GUI 추가
  • PSCS-1387: 다수 언어 지원

Back To Top

SDK 3.4.13.5874

Photon: ServerSDK

PhotonSocketServer.dll

신규

  • PSCS-1614: PeerBase.AbortConnection() - 강제로 (TCP) 연결을 해제하기 위함
  • PSCS-1538: 원시 정책 파일 리스터의 지원
  • PSCS-1632: ApplicationBase가 모든 오류를 기록하기 위한 처리되지 않은 예외 핸들러를 가지고 있습니다.
  • PSCS-1711: Photon Server SDK 에 System.Web.dll 추가
  • PSCS-1646: 타입의 압축을 가진 신규 바이너리 프로토콜 버전 1.7 의 프토로타입
  • PSCS-1781: gp 바이너리 프로토콜 1.7 추가

Back To Top

보완

  • PSCS-1402: 디버그 설정 파일들의 typo: CLRVersion = "v2.0"
  • PSCS-1447: 객체 배열 타입을 가진 딕셔너리들의 비직렬화에서 ArgumentNullException
  • PSCS-1427: ServerPeerBase.OnReceiveInternal() RoundTripTime, Variance, NumFailures 을 설정하지 않았습니다.
  • PSCS-1634: Photon 카운터: "EventsSentCount" 와 "EventsSentPerSec" 가 설정되지 않습니다
  • PSCS-1647: 암호화된 오퍼레이션들과 이벤트들의 비직렬화가 프로토콜 버전 1.7 에서 수행됩니다.
  • PSCS-1645: "public" 에서 "internal"로의 내부 오퍼레이션의 변경 (Operations.InitiEncryptionResponse, Operations.PingResponse)
  • PSCS-925: 값으로의 커스텀 타입의 딕셔너리 비직렬화가 동작하지 않습니다.
  • PSCS-1734: Websockets/JSON: 빈 객체들의 지원 추가
  • 메시지가 잘려지기 때문에 알수 없는 커스텀 타입의 JSON 인코딩이 클라이언트상에서 예외가 발생합니다.

Back To Top

변경

  • PSCS-1643: 더 이상 지원되지 않는 관리되지 않는 PhotonSocketServer에서 지원되지 않는 이전 프로토콜 제거. 미사용되는 GpBinary 프로토콜 프로토 타입 제거
  • PSCS-1648: 사용할 프로토콜을 지정하기 위한 TcpClient 클래스의 생성자 오버로드 추가
  • PSCS-1642: 퍼블릭 메소들들의 누락 문서 추가
  • PSCS-1641: CLSCompliant(false) 속성으 CLS-호환이 아닌 메소드에 추가
  • PSCS-1631: PeerBase 클래스의 CryptoProvider 프로퍼티를 protected 로 변경하여 커스텀 암호화를 구현하도록 허용.
  • PSCS-1258: CreateGameResponse 에서 사용되지 않은 NodeId 제거
  • PSCS-1740@JIRA: Photon 피어 타입 "HTTP" 를 새로운 NetworkProtocol enum 값 "HTTP" 으로 매핑
  • 타입 Guid 의 직렬화 지원 제거
  • 원시 커스텀 바이너리 데이터의 읽기와 전송을 구현하는 파생 클래스를 사용하는 PeerBase 에 메소드 추가.
  • DynamicMethodCreator: mono 상에서 예외의 원인이 되는 값 타입 세터들의 불필요 캐스트 방출 제거
  • GpBinaryByteTypeConverter: 통상적인 딕셔너리들이 이제 Guid 타입 대신 통상적인 타입 정의에 의해 감시 됩니다.

Back To Top

Loadbalancing

신규

  • PSCS-1621: 최종 플레이어가 나간 후 특정 시간동안 룸 오픈을 유지 하기 위하여 빈 룸에 대한 생존 시간을 지정할 수 있습니다 (오퍼레이션 마다)
  • PSCS-1587: 다수 로비 지원 추가
  • PSCS-1578: SQL 로비
  • PSCS-1628:,- PSCS-1509: 로드밸런싱 NUnit 테스트 확장
  • PSCS-1580: 로비 뮤트, 게임 뮤트: 참여한 게임 또는 로비에 룸 이벤트를 방지하는 옵션
  • PSCS-1484: 룸이 존재하지 않은 경우 룸 생성을 위한 Join 오퍼레이션에 선택적인 파라미터 추가
  • PSCS-1616: LoadBalancing 프로젝트의 HTTP 요청 큐 구현
  • PSCS-1569: FriendFinding 기능, 온라인 플레이어를 위한 캐시

Back To Top

보완

  • PSCS-1590: 쿼리를 가진 SqlLobby 에서 무작위 Join 이 최대 플레이어 프로퍼티를 체크하지 않습니다.
  • PSCS-1640: 스케쥴된 타이머를 통한 캐쉬에서 룸 제거가 스레드 세이프가 아니었습니다.
  • PSCS-1657: 룸 참여가 실패하는 경우 게임서버 SetProperties 오퍼레이션의 NullReferenceException.
  • PSCS-1655: JoinLobby 요청에서의 NullReferenceException
  • PSCS-1653: 마스터 서버에서 AppLobby 에서 룸들이 제거되지 않았습니다.
  • PSCS-1652: 누락된 GameId 로 인하여 CreateGame 실패했습니다.
  • PSCS-1590: "MaxPlayers", "IsVisible" 과 "IsOpen" 프로퍼티가 JoinRandom 요청에 체크되지 않았었습니다.
  • PSCS-1403: IPv6 주소로 게임서버 자체가 등록하는 것을 방지합니다.
  • PSCS-1412: 사용자 이름이 증명에 설정되었을 때 클라이언트가 게임에 재참여 할 수 없습니다.
  • PSCS-1501: 마스터 서버의 IpAddress 가 값이 아닌 참조에 의해 비교되었습니다. 공용 IP 주소 검색과 GS-To-Master 연결의 IPV4 IP / 인터페이스를 사용합니다. 각각 재 연결전에 마스터 서버 주소를 해결 합니다.
  • PSCS-1487: SetProperties 오퍼레이션에서 "잘 알려진 프로퍼티들"은 JS/Flash 클라이언트들에게 변환되지 않았습니다.
  • PSCS-1588: 게임서버에서 생성되지 않았다면 마스터에서 룸 인스턴스가 제거되지 않았습니다.
  • PSCS-1586: 연결해제시 캐쉬에서 룸 인스턴스들이 제거되지 않았습니다.
  • PSCS-1617: 게임 업데이트 이벤트들이 재초기화 프로퍼티가 true 로 설정되어 항상 전송되었습니다.
  • PSCS-1597: 게임 서버 연결이 실패할 때 플레이어들이 온라인 캐쉬에서 제거되지 않습니다.
  • PSCS-1637: 게임 리스트에서 게임이 제거되기전에 호출된 게임 생성이 실패 할 수 있습니다.

Back To Top

변경

  • PSCS-1569: FiendFriends 요청에 대한 api 테스트 추가.
  • PSCS-1507: Peer 와 GameServerPeer 구현들이 이제 관리되지않은 스레드 대신 ThreadPool 을 사용하여 생성됩니다.
  • PSCS-1475: 레이턴시 모니터: 평균의 기록 출력. 0ms 레이턴시 제거. ThreadsafeStopwatch 제거 + Environment.TickCount 계산으로 대체
  • PSCS-1488: Authenticate 요청내의 UserId 는 매치메이킹에 유일할 필요가 없습니다 (미사용 블럭된 사용자 기능 제거)
  • PSCS-1404: RaiseEvent 오퍼레이션에 의해 클라이언트들에게 전송된 이벤트들의 "Cache" 파라미터 제거. (파라미터는 클라이언트에의해 사용되지 않습니다)
  • 캐시된 룸 이벤트의 제거 개선
  • 변경 해시테이블로 객체들에게 이벤트 오퍼레이션 데이터 발생. 클라이언트들이 커스텀 데이터 객체들을 전송하도록 허용 합니다.

Back To Top

Counter Publisher

신규

  • PSCS-1418: Counter Publisher: 정책 피어들, 데이터그램 입력 & 출력 / s 에 대한 카운터 추가

Back To Top

변경

  • Photon.SocketServer.CounterPublisher - MaxRequestsInQueue 는 MaxItemsPerRequest 값으로 초기화 됩니다.

기술문서 TOP으로 돌아가기