dango 0.0.34 → 0.0.35
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/dango/server_framework.rb +21 -21
- data/lib/dango/version.rb +1 -1
- metadata +1 -1
@@ -83,11 +83,11 @@ class DangoServerFramework
|
|
83
83
|
def server_start()
|
84
84
|
set_server_variables() # 各種サーバー仕様の変数設定
|
85
85
|
|
86
|
-
logger.
|
87
|
-
logger.
|
88
|
-
logger.
|
89
|
-
logger.
|
90
|
-
logger.
|
86
|
+
logger.info("===== server initialize =====") # loggerの準備
|
87
|
+
logger.info("Process.pid=#{Process.pid}")
|
88
|
+
logger.info("port=#{@connection_server_port}")
|
89
|
+
logger.info("host=#{@connection_server_host}")
|
90
|
+
logger.info("max_connections=#{@connection_server_max_connections}")
|
91
91
|
|
92
92
|
open("tmp/pids/dango.pid", "wb"){|fh| fh.write Process.pid.to_s }
|
93
93
|
|
@@ -104,6 +104,9 @@ class DangoServerFramework
|
|
104
104
|
@mutex_send_response = Mutex.new # 送信レスポンス用のMutex
|
105
105
|
@arr_send_response = [] # 送信レスポンス用のキャッシュ
|
106
106
|
|
107
|
+
TCPSocket.do_not_reverse_lookup = true # 逆引きを行わない
|
108
|
+
# TCPSocket.do_not_reverse_lookup = false # 逆引きを行う
|
109
|
+
|
107
110
|
@gserver = DangoGServer.new(self, @connection_server_port,
|
108
111
|
@connection_server_host,
|
109
112
|
@connection_server_max_connections)
|
@@ -128,10 +131,10 @@ class DangoServerFramework
|
|
128
131
|
if @server_reload
|
129
132
|
@server_reload = nil
|
130
133
|
|
131
|
-
|
134
|
+
debug_print("-- stopping server")
|
132
135
|
|
133
136
|
# 強制的に接続しているsocketをクローズ
|
134
|
-
logger.
|
137
|
+
logger.info "socket_list.keys:#{socket_list.keys.inspect}"
|
135
138
|
socket_list.keys.each do |sk|
|
136
139
|
logger.debug "sk:#{socket_list[sk].inspect}"
|
137
140
|
socket_list[sk].close if ! socket_list[sk].closed?
|
@@ -142,14 +145,13 @@ class DangoServerFramework
|
|
142
145
|
@gserver.shutdown
|
143
146
|
@gserver.stop
|
144
147
|
while(!@gserver.stopped?) do
|
145
|
-
|
146
|
-
|
147
|
-
logger.debug "waiting... #{@gserver.stopped?} #{@gserver.connections}"
|
148
|
+
sleep 1
|
149
|
+
debug_print("waiting... #{@gserver.stopped?} #{@gserver.connections}")
|
148
150
|
end
|
149
151
|
|
150
152
|
@gserver = nil
|
151
153
|
|
152
|
-
|
154
|
+
debug_print("-- stopped server")
|
153
155
|
|
154
156
|
# GCを行う
|
155
157
|
GC.enable
|
@@ -157,7 +159,7 @@ class DangoServerFramework
|
|
157
159
|
GC.disable
|
158
160
|
|
159
161
|
# サーバーファイルを読み直し
|
160
|
-
|
162
|
+
debug_print("-- reload classes")
|
161
163
|
tmp_verbose = $VERBOSE
|
162
164
|
$VERBOSE = nil
|
163
165
|
|
@@ -174,14 +176,14 @@ class DangoServerFramework
|
|
174
176
|
begin
|
175
177
|
load f[:file]
|
176
178
|
rescue Exception
|
177
|
-
|
179
|
+
debug_print("#{$!.class} #{$!.message} #{$!.backtrace.pretty_inspect}")
|
178
180
|
end
|
179
181
|
end
|
180
182
|
|
181
183
|
$VERBOSE = tmp_verbose
|
182
184
|
|
183
185
|
# サーバーを再度起動
|
184
|
-
|
186
|
+
debug_print("-- start server")
|
185
187
|
server_start() # サーバー開始
|
186
188
|
end
|
187
189
|
rescue Exception
|
@@ -191,19 +193,17 @@ class DangoServerFramework
|
|
191
193
|
|
192
194
|
# gserver接続開始処理
|
193
195
|
def connecting(sock)
|
194
|
-
logger.
|
195
|
-
# logger.debug "getpeername=#{Socket.unpack_sockaddr_in(sock.getpeername).inspect} getsockname=#{Socket.unpack_sockaddr_in(sock.getsockname).inspect}"
|
196
|
+
logger.info "connecting:sock=#{sock} peeraddr=#{sock.peeraddr.inspect} addr=#{sock.addr.inspect}"
|
196
197
|
end
|
197
198
|
|
198
199
|
# gserver接続開始処理
|
199
200
|
def disconnecting(port)
|
200
|
-
logger.
|
201
|
+
logger.info "disconnecting:port=#{port}"
|
201
202
|
end
|
202
203
|
|
203
204
|
# gserverのserveメソッド:スレッド開始処理
|
204
205
|
def thread_main(sock)
|
205
|
-
|
206
|
-
logger.debug "#{sock} is accepted. thread.current=#{Thread.current.object_id} "
|
206
|
+
logger.info "#{sock} is accepted. thread.current=#{Thread.current.object_id} "
|
207
207
|
|
208
208
|
begin
|
209
209
|
sock.binmode
|
@@ -307,7 +307,7 @@ class DangoServerFramework
|
|
307
307
|
logger.error "Exception #{sid} #{error_message($!, 'u')}"
|
308
308
|
|
309
309
|
ensure
|
310
|
-
logger.
|
310
|
+
logger.info "#{sock.inspect} #{sid} is closing"
|
311
311
|
|
312
312
|
@mutex_proc_thread.synchronize do
|
313
313
|
begin
|
@@ -322,7 +322,7 @@ class DangoServerFramework
|
|
322
322
|
logger.debug "IOError #{sock} #{sid}"
|
323
323
|
end
|
324
324
|
|
325
|
-
logger.
|
325
|
+
logger.info "#{sock.inspect} #{sid} is closed"
|
326
326
|
end
|
327
327
|
|
328
328
|
end
|
data/lib/dango/version.rb
CHANGED
metadata
CHANGED
@@ -3,7 +3,7 @@ rubygems_version: 0.9.4
|
|
3
3
|
specification_version: 1
|
4
4
|
name: dango
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.0.
|
6
|
+
version: 0.0.35
|
7
7
|
date: 2007-11-13 00:00:00 +09:00
|
8
8
|
summary: Realtime communications network framework for Ruby and Flash on Rails.
|
9
9
|
require_paths:
|