webim服务器搭建
1. 网页版的Web IM ,一个超难度挑战!跪大虾来助
业即时通讯“客户通”(www.kehu.com.cn)的出现,彻底改变这样的局面,http://webmessenger.msn.com/
http://www.koolim.com/
http://www.imunitive.com/
http://123e.org/digest_773.html
http://www99.imhaha.com/webmsg/
http://www.radiusim.com/
http://www.koolim.com/
http://www.mabber.com/
http://www.ebuddy.com/
http://itbbs-arch.pconline.com.cn/topic.jsp?tid=6536434
https://imo.im/
2. 关于即时通讯整合
Pidgin、Digsby 是软件即时通讯,WebIM 是网页即时通讯,不一样的。你可以找一些 WebIM的开发包来做WebIM. WebIM 一般是由页面 socket 连接到服务器,然后和另一个连接到相同服务器的页面互相可以发聊天信息。
3. C#服务端,Android客户端 开发IM,服务端怎么弄,有没有开源的框架
C#开源项目(国外的还是很多) 一、Ajax框架 Ajax.NET Professional
(AjaxPro)是最先把AJAX技术在微软.NET环境下的实现的AJAX框架之一。它在客户端脚本之上创建代理类来调用服务器端的方法。
MagicAjax.NET是一款在ASP.NET下创建Web页面提供AJAX技术的框架。它使开发人员很容易把AJAX整合到他们的页面而不需要替换ASP.NET控件或自己写javascript脚本代码。
Anthem.NET是为ASP.NET开发环境提供的开源AJAX工具包,它可以运行于ASP.NET 1.1和2.0。
二、工作流(workflow)
Workflow.Net是使用微软.Net技术基于wmfc标准的创建工作流引擎。
NetBPM是JBpm移植到.net平台下的一款开源工作流软件。NetBpm可以很容易和.Net应用程序集成在一起,可以创建,执行和管理工作流程序。 Bpm
Tool支持将业务模型转换成软件模型。业务开发人员可以使用模型驱动的方法设计,实现,执行和跟踪业务流程。因此开发人员能够更容易的关注业务逻辑的变化。
其实微软自己的WPF做WorkFlow也很厉害。
三、文本编辑 FCKeditor是一款功能强大的开源在线文本编辑器(DHTML
editor),它使你在web上可以使用类似微软Word 的桌面文本编辑器的许多强大功能。它是轻量级且不必在客户端进行任何方式的安装。 FreeTextBox
是一个基于 Internet Explorer 中 MSHTML 技术的 ASP.NET 开源服务器控件。这是一款优秀的自由软件(Free
Software),我们可以轻松地将其嵌入到 Web Forms 中实现 HTML 内容的在线编辑,在新闻发布、博客写作、论坛社区等多种 Web
系统中都会有用途。 VietPad是一个功能完整的跨平台的Java/.NET的Vietnamese
Unicode开源文本编辑器。支持打开,编辑,打印,转换,排序,和保存基于文本的Unicode格式的Vietnamese文件。
NetSpell是一款.NET框架下的开源拼写检查引擎。 PPC_edit是一款应用在Pocket PC上的开源文本编辑器,它支持TXT, RTF, HTML,
WordML, DocBook 和 ZIP格式的文件,屏幕上会显示国际标准的软键盘。
四、博客(Blog)
NovaShare是一款Blog引擎,它使你创建基于交互式的web的新闻和论坛网站,很像WonkoSlice或Slashdot。管理员可以发布文章和发起投票,浏览者可以创建用户帐号,发表议论等等。
dasBlog是从BlogX 网上日志引擎发展而来。像Trackback ,Pingback
一样增加许多附加的特征,有完整的Blogger/MovableType
API支持,API注释,完整的Radio-style模板定制,支持Mail-To-Weblog/POP3的附件和内嵌图片,基于WEB的
DHTML,OPML,配置的编辑器。 DotText是一个被使用了数百个blogs的强劲的blog引擎。这是一个N-tiered应用的例子。
tBlogger是一个C#开发的完整的blog网站程序,使用XML配置。
Blog现在可以使用MVC的其他开源项目来构建,这些项目在codeplex上有很多,其中微软自己的就有OXite。
五、系统构建
.NETZ是一款免费开源工具,它可以压缩和打包微软 .NET 框架可执行文件(EXE,
DLL)以使他们更小。更小的可执行文件占用的磁盘空间较少且因为读取文件时对磁盘的访问较少而使读取数度更快。它和PE(portable
executable)打包工具不一样,.NETZ是使用 C# 编写的存粹的 .NET 解决方案。.NETZ可以用来打包几乎每一种 .NET
支持的语言编写的程序。.NETZ支持 .NET EXE 和 非共享(non-shared)的 DLL
文件。压缩过的程序能以相同的方式解压缩这些对最终用户是透明的。 NAntContrib为NAnt提供定制任务的工具。
Prebuild是XML驱动的一款跨平台pre-build工具,使开发人员很容易就可以为IDE和.NET开发工具生成项目或构建文件。它支持 Visual
Studio .NET 2002, 2003, 2005, SharpDevelop, MonoDevelop 和 NAnt。
BusyBeeBuilder是.NET平台下功能强大,易于使用,可扩展的开源构建自动操作工具。 Draco.NET 是 Windows
服务应用程序。它的设计使其容易持续的集成新特性。Draco.NET监视你的源代码储存库。当探测到你的项目有变化时自动重新创建项目并把包含变化列表的创建结果发送到你的Email。
Build Studio为软件的自动构件处理提供了一套完整的解决方案。 CruiseControl.NET是.NET平台下的一款整合服务器。
NAnt类似Apache项目下的Ant,是.Net下的开源构建工具。适用在自动编译.NET应用的场合,如.NET项目的每日构建(nightly
build)。
说老实话,我并不认为系统构建工具的作用真的有那么强大,如果你真的计划做一个很大的项目,且持续开发时间很长,那么你可以使用上面的系统构建工具。
五、图表制作
ZedGraph是C#编写的.NET类库,提供了用户控件和web控件。它可以创建2D的线性图、条形图和饼图。它功能完整且有详细的功能自定义,不过
使用默认的选项就足够好用了。一款类似 PieChart, StackBar, LineChart的C#开源图表组件。
NPlot是一款.NET下的开源图表类库.它值得称道的地方是优雅且灵活的API设计.NPlot包含了Windows Form控件,
ASP.NET控件和一个创建Bitmap图片的类。还有一个可用的GTK#控件。 XSCharting是C#开发的图表组件,提供了多种多样的图表选项。
DaveChart是一个免费的DotNet类库。 NChart 提供了很多值得应用在商业,教育等多个领域的2 D图表。
微软自己已经提供了一个chat绘制控件,也就是原来的nat,如果那个可以满足你的要求,那么完全没有必要使用上面的。但是如果你需要研究画图,作自己定义的chat,那么这些开源的项目将对你有很大的帮助。
六、聊天系统
Dot Net Chat
server是基于DotNet框架开发的聊天服务器和客户端项目。说老实话,我对这个很感兴趣,有时间,要瞧瞧它的代码是咋实现的。
七、内容管理系统(CMS)
Ludico是C#编写的居于ASP.NET
2.0的Portal/CMS系统。它的模块化设计是你可以按照你希望的使用或开发网站功能。它里面有高级的用户管理,一个所见即所的(WYSIWYG)的编辑器等。
mojoPortal是一款C#开发的面相对象网站框架,它可以运行于Windows的ASP.NET 和GNU/linux 或Mac OS X的Mono的平台上。
Cuyahoga是C#开发的灵活的CMS / Portal 解决方案。它可以运行于Microsoft .NET 和Mono 平台,支持SQL Server,
PostgreSQL或MySQL作为底层数据库。 Umbraco是一款在.net平台下C#开发的开源内容管理系统,该系统效率,灵活,用户界面都不错。 Kodai
CMS是.NET平台下的一款功能齐全的内容管理系统。 Rainbow项目是一款使用Microsoft’’s
ASP.NET和C#技术开发的有丰富功能的开源内容管理系统。 NkCMS是使用ASP.net和Sql server 2000开发的内容管理系统。
Amplefile是一款内容管理系统,是.Net环境下的windows应用程序,使用了.Net remoting.
Go.Kryo是一个用ASP.NET(C#).NET 实现的简单的内容管理系统,后台数据库使用Microsoft SQL Server 。 ndCMS是
ASP.net
(C#)下的一个内容管理系统。它提供了用户管理,文件管理,一个WYSIWYG编辑器,模板管理,拼写检查和内置的http压缩。ndCMS的目标是提供一个简单而快速的方式部署.Net站点以节省你的时间和金钱。
这些开源的CMS我试用了几个,说真的,拿来研究可以,要真的实施,估计很难。
九、论坛系统
YetAnotherForum可以作为ASP.NET开发的网站的论坛或是留言板。它使用MSSQL作为底层数据库。
十、安装制作
izfree是一套套免费的工具用于帮助创建使用Microsoft”’’s Windows
Installer 技术的安装程序。使用izfree你可以为你的应用程序制作强劲的安装程序。
Windows Installer XML
(WiX)可以重XML源文件创建Windows程序安装包的工具集。它支持命令行方式,开发人员可以把结合它来创建MSI和MSM安装包一个可以和商业软件安装产品相比的开源打包工具。
一般的需求试用VS
自带的就可以了,更复杂的需要用到InstallShield,这样看起来开源的就没啥意义了。
十一、IoC容器
Spring.net是从java的Spring
Framework移植过来的。java的Spring包含了许多功能和特性,在当前的Spring.net都有提供。Spring.net最初发布的版本包含了一个很有特色的IoC容器。
Castle是一组应用开发的工具,内含一个简单的IoC容器。
StructureMap是.NET环境下的一个轻量级依赖注入工具,StructureMap也是一个灵活的、可扩展的通用“插件”机制的.NE
我用过StrucutureMap,但是给我的感觉是,试用这个似乎没多发帮助。
十二、网络客户端
.NET FTP Client是C#编写的开源类库。
.NET Telnet是微软.NET
Framework下的C#开发的开源telnet类库。它的灵感来至Java Telnet Application。
metro这个项目是C#编写的类库,它提供了一套丰富的类使开发IP version 4, TCP,
UDP and ICMP等工作更容易。它包含了有很有用的工具如包嗅探器,网络分析工具例如路由跟踪,ping等。
LJ.NET是LiveJournal站点的客户端。它为LJ在线日志服务提供了简单而强大的用户接口。
NET VNC Viewer 是一款完全用C#开发的开源VNC观察器。它兼容Smartphones,
Pocket PC和Windows的电脑(.NET CF or .NET Framework)。它比起其它观察器的优点是可以在Pocket
PC上全屏显示而且可以旋转屏幕。
GVDownloader允许你从google videos, metacafe, putfile,
youtube, break.com 和更多的地方快速下载内含的视频和多媒体。它的包含一个强劲IE插件和位于你系统托盘的独立程序。
DotNetOpenMail能够使你在微软.net框架开发的asp.net,
WinForm应用程序发送Email。它是C#编写的开源组件,它不需要使用System.Web.Mail类库就可以容易的创建带附件HTML和
Plain-text的Email。程序员不需要知道很多相关的细节就可以使用不同的字符集或不同的MINE编码来创建
multipart/alternative,multipart/related和multipart/mixed的MIME消息。
DotMSN是一款独立的开源类库,它不需要和官方的MSN Messenger交互,因此不必安装MSN
Messenger就可以使用DotMSN和MSN
Messenger服务通信.DotMSN是C#编写的,所以.NET环境支持的语言都能够使用.DotMSN类库使用简单而且实现方便。它灵活,坚固,
轻量级利于整合到任何应用系统.使用DotMSN的应用系统能实现从创建消息机器人到自定义客户端等各种不同的功能.如果你的应用程序需要和
Messenger服务通信,DotMSN是一个不错的工具.
SharpSSH使用C#实现了SSH2协议,它支持SSH, SCP 和 SFTP.
OpenPOP.NET一组和POP Servers通信的.NET类库。
IceChat是为连接多样的IRC Servers设计的Internet Relay Chat
Client。
lphant是为edonkey/emule开发的开源客户端程序。
.NET FTP Client C#开发的类库。
OpenSmtp.net 是 C# 开发的开源SMTP组件。它不依赖.NET Framework
的System.Web.Mail 包中的类。允许开发人员使用不同于MS SMTP的SMTP 服务器且提供了web
service而可以通过HTTP发送email。
这里面有几个值得推荐,例如DotMsn这个,在某些场合就很有用处。
4. 如何看待 Web 即时通讯产品
1. 只要HTTP(防火墙一般不会封掉)可用的的地方都可以使用webim服务 2. 更新透明化,只需要在服务器端做即可,免去了客户安装配置的麻烦。对开发者和用户来说都是福音 3. 跨平台 应用场景: 1. 有防火墙、受限的网络环境 2. 作为团队内部交流工具,成员使用不同平台 3. 突发需求,便携式应用 4. 觉得WebIM是大势所趋,以后会代替桌面程序成为使用IM的主要方式 如果咱是产品经理,关心 1. 用户友好程度 2. 可伸缩性,是否可以拓展到超大规模 3. 和其他产品的融合度 作为用户,关心 1. 安全性 2. 服务的稳定性 PS:补充一下,刚刚想到,现在很多的im都支持p2p消息来减轻中心化服务器的负荷;这一点webim似乎还没有好的解决方案
5. WEBIM是什么
基本web浏览器所构建的一套即时通讯工具,
其实跟传统的聊天室类似,只不过webim一般是一对一服务,
用于网站客服与客户在线直接沟通,因为有些用户可能不方便上QQ等聊天工具
所以webim产生,可以让客户直接与网站客服人员在网页上即时聊天沟通。
6. GitHub 上有哪些比较有趣的 php 项目
Hprose for php 的加速扩展。其中所包含的 hprose 序列化和反序列化速度秒杀 php 内一切其它序列化扩展的速度,比如 php 序列化,json,msgpack,igbinary等。
7. 如何搭建高并发IM系统架构
高并发情况下要考虑的因素有很多: 服务器并发处理能力、响应时间;数据安全及一致性、锁机制;数据存储及访问性能
8. web下的IM聊天用PHP做
可以参考NextIM的架构,NextIM是国内最成熟的社区网站WebIM。
9. 如何搭建一个linux的im追踪服务器
1、检查系统密码文件首先从明显的入手,查看一下passwd文件,ls –l /etc/passwd查看文件修改的日期。
awk –F: ‘length($2)==0 {print $1}’ /etc/shadow
2、查看一下进程,看看有没有奇怪的进程
重点查看进程:ps –aef | grep inetd
inetd是UNIX系统的守护进程,正常的inetd的pid都比较靠前,如果你看到输出了一个类似inetd –s /tmp/.xxx之类的进程,着重看inetd –s后面的内容。在正常情况下,LINUX系统中的inetd服务后面是没有-s参数的,当然也没有用inetd去启动某个文件;而solaris系统中也仅仅是inetd –s,同样没有用inetd去启动某个特定的文件;如果你使用ps命令看到inetd启动了某个文件,而你自己又没有用inetd启动这个文件,那就说明已经有人入侵了你的系统,并且以root权限起了一个简单的后门。
输入ps –aef 查看输出信息,尤其注意有没有以./xxx开头的进程。一旦发现异样的进程,经检查为入侵者留下的后门程序,立即运行kill –9 pid 开杀死该进程,然后再运行ps –aef查看该进程是否被杀死;一旦此类进程出现杀死以后又重新启动的现象,则证明系统被人放置了自动启动程序的脚本。这个时候要进行仔细查找:find / -name 程序名 –print,假设系统真的被入侵者放置了后门,根据找到的程序所在的目录,会找到很多有趣的东东,
接下来根据找到入侵者在服务器上的文件目录,一步一步进行追踪。
3、检查系统守护进程
检查/etc/inetd.conf文件,输入:cat /etc/inetd.conf | grep –v “^#”,输出的信息就是你这台机器所开启的远程服务。
一般入侵者可以通过直接替换in.xxx程序来创建一个后门,比如用/bin/sh 替换掉in.telnetd,然后重新启动inetd服务,那么telnet到服务器上的所有用户将不用输入用户名和密码而直接获得一个rootshell。
4、检查网络连接和监听端口
输入netstat -an,列出本机所有的连接和监听的端口,查看有没有非法连接。
输入netstat –rn,查看本机的路由、网关设置是否正确。
输入 ifconfig –a,查看网卡设置。
5、检查系统日志
命令last | more查看在正常情况下登录到本机的所有用户的历史记录。但last命令依赖于syslog进程,这已经成为入侵者攻击的重要目标。入侵者通常会停止系统的syslog,查看系统syslog进程的情况,判断syslog上次启动的时间是否正常,因为syslog是以root身份执行的,如果发现syslog被非法动过,那说明有重大的入侵事件。
在linux下输入ls –al /var/log
检查wtmp utmp,包括messgae等文件的完整性和修改时间是否正常,这也是手工擦除入侵痕迹的一种方法。
6、检查系统中的core文件
通过发送畸形请求来攻击服务器的某一服务来入侵系统是一种常规的入侵方法,典型的RPC攻击就是通过这种方式。这种方式有一定的成功率,也就是说它并不能100%保证成功入侵系统,而且通常会在服务器相应目录下产生core文件,全局查找系统中的core文件,输入find / -name core –exec ls –l {} \; 依据core所在的目录、查询core文件来判断是否有入侵行为。
7、检查系统文件完整性
检查文件的完整性有多种方法,通常我们通过输入ls –l 文件名来查询和比较文件,这种方法虽然简单,但还是有一定的实用性。但是如果ls文件都已经被替换了就比较麻烦。在LINUX下可以用rpm –V `rpm –qf 文件名` 来查询,查询的结果是否正常来判断文件是否完整。
10. 如何看待 Web 即时通讯(IM)产品
1. 只要HTTP(防火墙一般不会封掉)可用的的地方都可以使用webim服务 2. 更新透明化,只需要在服务器端做即可,免去了客户安装配置的麻烦。对开发者和用户来说都是福音 3. 跨平台 应用场景: 1. 有防火墙、受限的网络环境 2. 作为团队内部交流工具,成员使用不同平台 3. 突发需求,便携式应用 4. 我觉得WebIM是大势所趋,以后会代替桌面程序成为使用IM的主要方式 如果我是产品经理,我关心 1. 用户友好程度 2. 可伸缩性,是否可以拓展到超大规模 3. 和其他产品的融合度 作为用户,我关心 1. 安全性 2. 服务的稳定性 PS:补充一下,我刚刚想到,现在很多的im都支持p2p消息来减轻中心化服务器的负荷;这一点webim似乎还没有好的解决方案 查看原帖>>