Amo*_*ter 11 webserver smalltalk seaside pharo
我已经有一段时间涉足Seaside,而且,想要再次为一个小项目玩它,我下载了Pharo的一键式图像,并认为我会查看文档来了解我的方向.(有一个相关的问题是关于其中两个之间的性能差异,一个关于哪些可以服务器静态文件,但都没有解释所有这些之间的差异.)
A Walk on the Seaside的第一张图片显示了"海边控制面板"中的两个可用服务器:WASwazooAdaptor和WAComancheAdaptor.在对菲罗海滨下载页说,你可以启动或者Zinc,Kom或Swazoo作为Web服务器,并且它们中的任可从海边控制面板的适配器.然而,在我刚下载的形象,面板只有WATestServerAdaptor,ZnZincServerAdaptor,ZnZincStaticServerAdaptor,和ZnZincStreamingServerAdaptor.其中第二个是默认情况下唯一可用的.
我从所有这些相互矛盾的信息中得知,锌是最新的,至少在Pharo上使用 - 这是正确的吗?其他的都过时了吗?或者他们各自都有自己的优点和缺点,需要添加到图像中(例如通过蒙蒂塞洛)?Kom和Swazoo仅适用于Squeak吗?我何时会在Pharo上使用三种不同的Zinc服务器?我希望有人能解决我的困惑.
ema*_*olo 17
从版本1.3(Zinc)开始,Zinc是Pharo的默认和捆绑的HTTP堆栈框架(服务器/客户端).据我所知,Zinc仅在Pharo中得到支持.
Kommanche(Kom)是Squeak的默认Web服务器,并且仅在Squeak中支持(它"可以"在Pharo中运行,但只有少数仍然使用它).
Swazoo尝试在不同的Smalltalk方言中使用一个通用的Web服务器(它是在Camp Smalltalk事件期间构思的)并且依赖于一组称为SPort(Smalltalk Portability)的通用"兼容性类",并且在一段时间内它成功了一些网络相关解决方案的基线(我做了两个Swazoo端口到Dolphin Smalltalk).
对于主要依赖的Seaside 3,选择适配器模式以提供通用API,因此不需要为所有Smalltalk方言提供通用Web服务器,只需为每个Web服务器实现一个适配器.对于平台特定功能,选择了一个新的兼容性层(Grease),同时删除了SPort的依赖性.
Swazoo仍然被AIDA/web框架使用,主要是因为它的作者也是Swazoo本身的主要编码者之一.
关于ZnServer的不同子类,如果你仍然不知道使用哪一个,那么你只会使用它ZnZincServerAdaptor startOn: 8080,你会发现其他适配器的特定用途.
小费: ZnZincServerAdaptor default server debugMode: true.