问题标签 [twisted]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 具有多处理工作人员的扭曲网络客户端?
所以,我有一个使用 Twisted + Stomper 作为 STOMP 客户端的应用程序,它将工作分配给 multiprocessing.Pool 的工作人员。
当我只使用 python 脚本启动它时,这似乎工作正常,它(简化)看起来像这样:
当它被打包用于部署时,我想我会利用 twistd 脚本并从 tac 文件运行它。
这是我看起来非常相似的 tac 文件:
为了说明起见,我折叠或更改了一些细节;希望它们不是问题的本质。例如,我的应用程序有一个插件系统,池由一个单独的方法初始化,然后使用 pool.apply_async() 将工作委托给池,传递我的插件的一个 process() 方法。
因此,如果我运行脚本 (stompclient.py),一切都会按预期工作。
如果我在非守护程序模式(-n)下运行twist,它似乎也可以正常工作:
但是,当我在守护程序模式下运行时它不起作用:
该应用程序似乎可以正常启动,但是当它尝试分叉工作时,它只是挂起。通过“挂起”,我的意思是似乎从未要求子进程做任何事情,而父进程(称为 pool.apply_async())只是坐在那里等待响应返回。
我确信我用 Twisted + 多处理做了一些愚蠢的事情,但我真的希望有人可以向我解释我的方法中的缺陷。
提前致谢!
python - Python 聊天:删除变量以清理函数中的内存?
我正在 python 和扭曲的框架中创建一个聊天守护程序。而且我想知道当连接多个用户时,我是否必须删除函数中创建的每个变量以从长远来看节省内存,或者这些变量是否会自动清除?这是我的代码的精简版本来说明我的观点:
python - python中带有Twisted框架的聊天服务器无法从Flash客户端接收数据
我在 Python 中使用 Twisted 框架开发了一个聊天服务器。它适用于 Telnet 客户端。但是当我使用我的flash客户端问题出现...
(使用我的旧 php 聊天服务器找到的 flash 客户端工作,我用 python 重写了服务器以获得性能)
在 flash 客户端和扭曲服务器之间建立连接: XMLSocket .onConnect 返回 TRUE。所以这不是策略文件的权限问题。
我无法使用 XMLSOCket 函数 send() 从 Flash 客户端发送任何消息,服务器端没有收到任何消息。我试图用 '\n' 或 '\n\0' 或 '\0' 结束这些消息,但没有成功。
你有什么线索吗?
python - 网络编程抽象、分解
我有一个问题如下:
服务器进程 1
- 不断向数据存储发送发生的更新
服务器进程 2
- 客户端联系服务器,服务器查询数据存储并返回结果
问题是,进程 1 和进程 2 发回客户端的结果是完全不同且不相关的。
如何分解这个?您是否只有一个进程不断发送数据,并将协议定义为具有对应于返回类型是 1 还是 2 的位?
你有两个过程吗?那么他们如何共享数据存储(它只是一个结构而不是数据库)?
谢谢!
python - HTTP 下载非常大的文件
我正在使用 Python/Twisted 开发一个 Web 应用程序。
我希望用户能够下载一个非常大的文件(> 100 Mb)。当然,我不想将所有文件加载到(服务器的)内存中。
服务器端我有这个想法:
我希望这可以工作,但我遇到了问题:我正在使用 FF 进行测试......似乎浏览器让我等到文件下载完成,然后我有打开/保存对话框。
我希望立即出现对话框,然后进度条正在运行......
也许我必须在 Http 标头中添加一些东西......文件大小之类的东西?
networking - 将单个端口用于多个套接字的标准方法?
嘿,我正在用 Twisted 编写一个应用程序,就目前而言,我有 4 个服务器绑定了两个不同的端口,它们都通过 JSON 与客户端通信。无论如何将这 4 个服务器绑定到同一个端口并且交互保持不变?
例如,假设客户端订阅了两个不同的提要,通过直接套接字传输。
现在我只是喜欢
它将从相应的提要中读取正确的 JSON 字符串。有没有办法维持这种类型的功能,但在同一个端口上联系我的服务器?
我不想将所有服务器功能都投入到一台大型服务器中,并通过标题前缀对数据进行分区。
我不想做类似的事情
python - 手动给扭曲(网络)网络堆栈一个要处理的数据包?
我正在使用扭曲框架运行 HTTP 服务器。有什么办法可以“手动”要求它处理一些有效载荷?例如,如果我已经构建了一些以太网帧,我可以要求twisted 的reactor 处理它,就好像它刚刚到达我的网卡一样?
python - Python - 扭曲和单元测试
我正在为作为 HTTP 服务器运行的应用程序的一部分编写单元测试。我一直尝试采用的方法是导入包含 HTTP 服务器的模块,启动它。然后,单元测试将使用 urllib2 进行连接、发送数据并检查响应。
我们的 HTTP 服务器正在使用 Twisted。这里的一个问题是我对 Twisted 不太熟悉 :)
现在,我实例化我们的 HTTP 服务器并在 setUp() 方法中启动它,然后在 tearDown() 方法中停止它。
问题是,Twisted 似乎不喜欢这样,它只会运行一个单元测试。在第一个之后,反应堆将不再启动。
我一直在搜索和搜索,但我似乎无法找到一个有意义的答案。
我是完全采取了错误的方法,还是只是遗漏了一些明显的东西?
python - 如何在windows上使用twistedweb和django
我正在寻找一种在 Windows 上部署 django 应用程序的超级简单方法。
基本上,我的计划是设置任何带有我的应用程序的 python Web 服务器,并使用 py2exe 将所有内容绑定到一个可执行文件中。
我尝试过使用cherrypy,但是最新的(3.1.2)服务器不能与安装了Nod32 防病毒软件的Windows XP 一起使用。
所以我决定尝试一下 Twisted。我只在 Twisted 上找到了 Django,但它似乎已经很老了(2008 年),而且它使用了 twistd 命令,这有点难以打包成单个可执行文件。
有没有人有工作剪断或良好的信息来源?