前言昨天「去哪儿」开源了自研的 IMStartalk,作为一个在 IM 领域划水了一段时间的人,也想了解下其他人是如何去考虑 IM 设计,所以就开始了源码阅读之旅。接下来会用几篇文章简单分析一下。本篇分析的是Search.介绍简单浏览了代码,可以看到 IM Search 是基于 Flask 开发的,而且是单例运行的,带有几个全局变量,甚至还运行在 debug 模式下。没有使用 gunicorn 等 Server。qtalk_search 提供了搜索用户和搜索群组的功能。搜索用户搜索用户是通过一次很晦涩的 SQL查询得出的,核心 SQL (原本不带分行的,格式化了一下...):sql = "select aa.user_id,aa.department,aa.icon,aa.user_name,aa.mood from
(SELECT a.user_id, a.department, b.url AS icon, a.user_name, b.mood FROM host_users a
LEFT JOIN vcard_version b ON a.user_id = b.username
WHERE a.hire_flag = 1
AND LOWER(a.user_type) != 's'
AND (a.user
...
继续阅读
(13)