{ "info": { "author": "xrain0610", "author_email": "xrain@simcu.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation", "Topic :: Software Development :: Libraries" ], "description": "## \u897f\u7eb3\u666e\u65af - synapse (Python Version)\n\n### \u6b64\u4e3a\u7cfb\u7edf\u6838\u5fc3\u4ea4\u4e92\u7ec4\u4ef6,\u5305\u542b\u4e86\u4e8b\u4ef6\u548cRPC\u7cfb\u7edf\n\u5305\u5730\u5740\n> https://pypi.python.org/pypi/astraea\n\ngit:\n> git clone https://github.com/synapse-rpc/astraea.git synapse\n\n\u6216\u8005\u4f7f\u7528PIP\u5b89\u88c5\uff1a\n> pip install astraea\n\n\u521d\u59cb\u5316\u65b9\u6cd5:\n\n```python\n#\u4f7f\u7528pip\u5b89\u88c5\nfrom synapse import Synapse\n#\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u5bf9\u8c61(\u8fd9\u91cc\u6709\u7591\u95ee,\u662f\u4e0d\u662f\u5e94\u8be5\u52a0\u62ec\u53f7)\nserver = Synapse()\n#\u5b9a\u4e49\u4e8b\u4ef6\u56de\u8c03\nserver.event_callback_map = {\n \"icarus.test\": callback,\n \"pytest.test\": callback\n}\n#\u5b9a\u4e49RPC\u670d\u52a1\u65b9\u6cd5\nserver.rpc_callback_map = {\n \"pyt.get\": pyt,\n}\n#\u8bbe\u7f6e\u7cfb\u7edf\u540d\u79f0(\u76f8\u540c\u7684\u7cfb\u7edf\u4e2d\u7684APP\u624d\u80fd\u76f8\u4e92\u8c03\u7528)\nserver.sys_name = \"\"\n#\u8bbe\u7f6e\u5e94\u7528\u540d\u79f0(RPC\u8c03\u7528\u548c\u4e8b\u4ef6\u7684\u6807\u8bc6)\nserver.app_name = \"\"\n#RabbitMQ \u670d\u52a1\u5668\u5730\u5740\nserver.mq_host = \"\"\n#RabbitMQ \u670d\u52a1\u5668\u7aef\u53e3\nserver.mq_port = 5672\n#RabbitMQ \u670d\u52a1\u5668\u7528\u6237\nserver.mq_user = \"\"\n#RabbitMQ \u670d\u52a1\u5668\u5bc6\u7801\nserver.mq_pass =\"\"\n#\u8c03\u8bd5\u6a21\u5f0f\u5f00\u5173 (\u6253\u5f00\u540e\u53ef\u4ee5\u770b\u5230\u5f88\u591aLOG)\nserver.debug = True\n#\u662f\u5426\u7981\u7528RPC\u5ba2\u6237\u7aef\u529f\u80fd (\u9ed8\u8ba4\u53ef\u4ee5\u8fdb\u884cRPC\u8bf7\u6c42)\nserver.disable_rpc_client = True\n#\u662f\u5426\u7981\u7528\u53d1\u9001\u4e8b\u4ef6\u7684\u673a\u80fd (\u9ed8\u8ba4\u5141\u8bb8\u53d1\u9001\u4e8b\u4ef6)\nserver.disable_event_client = True\n#\u5f00\u59cb\u670d\u52a1\nserver.serve()\n```\n\u4e8b\u4ef6\u5904\u7406\u65b9\u6cd5\u7c7b\u578b:\n```python\ncallback(params, raw) \n#params \u4e3a\u5b57\u5178,\u5ba2\u6237\u7aef\u8bf7\u6c42\u6570\u636e\n#raw \u4e3aRPC\u4f20\u8f93\u7684\u6570\u636e\u5305,\u4e00\u822c\u60c5\u51b5\u4e0d\u4f7f\u7528\n#\u9700\u8981\u8fd4\u56de True\u8868\u793a\u5904\u7406\u5b8c\u6210,\u8fd4\u56deFalse\u8868\u793a\u5904\u7406\u5931\u8d25\n```\nRPC\u670d\u52a1\u65b9\u6cd5\u7c7b\u578b:\n```python\npyt(params, raw) \n#params \u4e3a\u5b57\u5178,\u5ba2\u6237\u7aef\u8bf7\u6c42\u6570\u636e\n#raw \u4e3aRPC\u4f20\u8f93\u7684\u6570\u636e\u5305,\u4e00\u822c\u60c5\u51b5\u4e0d\u4f7f\u7528\n#\u9700\u8981\u8fd4\u56de \u4e00\u4e2akey\u4e3astring\u7684\u5b57\u5178\n```\n\u53d1\u9001RPC\u8bf7\u6c42:\n```python\n#\u7b2c\u4e00\u4e2a\u53c2\u6570\u4e3a\u8981\u8c03\u7528\u7ec4\u4ef6\u7684\u540d\u79f0\n#\u7b2c\u4e8c\u4e2a\u53c2\u6570\u4e3a\u8981\u8c03\u7528\u7ec4\u4ef6\u7684\u65b9\u6cd5\n#\u7b2c\u4e09\u4e2a\u53c2\u6570\u4e3a\u4e00\u4e2akey\u4e3astring\u7684\u5b57\u5178 \u8981\u53d1\u9001\u7684\u6570\u636e\nserver.send_rpc(\"icarus\",\"echo\",{\"ceshi\":\"\u6211\u662f\u4e2d\u6587\",\"test\":\"from python\"})\n```\n\u53d1\u9001\u4e8b\u4ef6\u8bf7\u6c42:\n```python\n#\u7b2c\u4e00\u4e2a\u53c2\u6570\u4e3a\u8981\u89e6\u53d1\u7684\u4e8b\u4ef6\u540d\u79f0 \n#\u7b2c\u4e8c\u4e2a\u53c2\u6570\u4e3a \u4e8b\u4ef6\u7684\u76f8\u5173\u6570\u636e \u4e00\u4e2akey\u4e3astring\u7684\u5b57\u5178\nserver.send_event(\"test\",{\"ceshi\":\"\u6211\u662f\u4e2d\u6587\",\"test\":\"from python\"})\n```\n\u4e0a\u9762\u53d1\u9001\u4e86\u4e00\u4e2a\u540d\u4e3a app_name.test \u7684\u4e8b\u4ef6, \u53ea\u9700\u8981\u5728\u76d1\u542c\u5668\u4e2d\u6ce8\u518c app_name.test \u5373\u53ef\u5728\u4ea7\u751f\u4e8b\u4ef6\u65f6\u88ab\u901a\u77e5", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/synapse-rpc", "keywords": "", "license": "BSD License", "maintainer": "", "maintainer_email": "", "name": "rpc.synpase.astraea", "package_url": "https://pypi.org/project/rpc.synpase.astraea/", "platform": "all", "project_url": "https://pypi.org/project/rpc.synpase.astraea/", "project_urls": { "Homepage": "https://github.com/synapse-rpc" }, "release_url": "https://pypi.org/project/rpc.synpase.astraea/1.4.3/", "requires_dist": null, "requires_python": "", "summary": "A rpc framework base RabbitMQ", "version": "1.4.3" }, "last_serial": 3674483, "releases": { "1.4.3": [ { "comment_text": "", "digests": { "md5": "17f669c8047e1ea7617fc9493e683fba", "sha256": "9ab7557be28f3b447635a2546ada72299415f53d64463b9ca8c989552dc0aef9" }, "downloads": -1, "filename": "rpc.synpase.astraea-1.4.3.tar.gz", "has_sig": false, "md5_digest": "17f669c8047e1ea7617fc9493e683fba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5282, "upload_time": "2018-03-16T00:22:42", "url": "https://files.pythonhosted.org/packages/6c/23/1a93901f660b10cce015dd0d5910fbf1bd4ef85f4768552d8630f7a3fa25/rpc.synpase.astraea-1.4.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "17f669c8047e1ea7617fc9493e683fba", "sha256": "9ab7557be28f3b447635a2546ada72299415f53d64463b9ca8c989552dc0aef9" }, "downloads": -1, "filename": "rpc.synpase.astraea-1.4.3.tar.gz", "has_sig": false, "md5_digest": "17f669c8047e1ea7617fc9493e683fba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5282, "upload_time": "2018-03-16T00:22:42", "url": "https://files.pythonhosted.org/packages/6c/23/1a93901f660b10cce015dd0d5910fbf1bd4ef85f4768552d8630f7a3fa25/rpc.synpase.astraea-1.4.3.tar.gz" } ] }