c512319 / chat-server

Simple websocket chat server.
Eclipse Public License 1.0
0 stars 0 forks source link

修改建议 #1

Open clyce opened 9 years ago

clyce commented 9 years ago

chat-server.routes.websocket 第22行,最好改成

(def current-id (atom 0))
(defn next-id []
  (swap! current-id inc)
  @current-id)

原因: 定义式(defn、def)不推荐放在域内,在某些环境下,这可能导致不可预料的效果

dummy in-memory database最好作为独立的命名空间存在,以方便分离依赖

观察到chat-server.routes.websocket/chatrooms有很多通过id拿chatroom的操作,可以考虑将其用hashmap表示以提高读性能(尤其对于chatroom这类,项数随用户无限制增长的,用filter很可能导致非常低的效率)

Users也有相同问题

使用future-sleep-loop的方式进行定时轮询简单粗暴,但会长期闲置一个线程,可尝试通过core.async的timeout channel实现(可熟悉:CSP异步模型)

命名空间组织较为混乱,逻辑层级关系不清晰,需要整理

项目此规模下只有一个git commit 并不合理,尽量能够在开发时较为频繁地commit,原则上以一句commit能够说明你做的事为准。


这些并没有明确的时间要求,而且多数都是参考意见,可不遵循。 你可以先自己择时修缮起来,好了之后通知我~

c512319 commented 9 years ago

Improve complete and thanks very much!