Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
为什么? 网游金矿,我们没份……
技术壁垒 <ul><li>C++ </li></ul><ul><li>硬件( GPU 、 multicore ) </li></ul><ul><li>图形学( DirectX 、 OpenGL ) </li></ul><ul><li>人工智能 ...
救世主?银弹? <ul><li>从来就没有什么救世主(欧仁∙鲍狄埃 ) </li></ul><ul><li>没有银弹( Fred Brooks  ) </li></ul><ul><li>所以别指望我今天讲的东西能救大家于水深火热之中,我只是来忽...
用 python 快速搭建网游服务器 赖勇浩 http://laiyonghao.com 2009.5.1
网游之困 <ul><li>网游是最具技术含量的软件(国内尤是) </li></ul><ul><li>网游市场是快速变化的 </li></ul><ul><li>人力资源昂贵,硬件日益廉价 </li></ul>
脚本是网游进步的阶梯 <ul><li>脚本降低人才进入网游行业的门槛 </li></ul><ul><li>脚本是市场快速变化的应对之道 </li></ul><ul><li>脚本使降低人力成本成为可能 </li></ul>
PHP 、 Lua 、 Python 之选 <ul><li>PHP  对高性能的网络编程支持有限 </li></ul><ul><li>Lua  缺乏原生的大型应用的编程模式支持 </li></ul><ul><li>Python  简洁、库丰富、...
Python + Database <ul><li>Python Database API Specification v2.0 --  PEP 249  </li></ul><ul><li>mysql ( MySQLdb ) </li></u...
Distributed <ul><li>twisted </li></ul><ul><li>Pyro </li></ul><ul><li>xml-rpc </li></ul>
用  Python  实现一个 * 伪 * 分布式系统 DB proxy Game logic server Clients Databases
Python  性能优化 <ul><li>优化网络  I/O </li></ul><ul><li>优化数据库操作 </li></ul><ul><li>优化数据结构 </li></ul><ul><li>优化算法 </li></ul><ul><li...
与客户端的通信协议 <ul><li>一定要  TCP/UDP 吗? </li></ul><ul><li>一定要二进制吗? </li></ul><ul><li>try http </li></ul><ul><li>try plain text/x...
客户端的未来之星 <ul><li>flash 、 flash 、 flash </li></ul><ul><li>flex builder 3 </li></ul><ul><li>MXML 、 ActionScript 3 </li></ul>...
The End http://laiyonghao.com http:// twitter.com/laiyonghao
Upcoming SlideShare
Loading in …5
×

用 Python 快速搭建网游服务器

5,881 views

Published on

用 Python 快速搭建网游服务器

Published in: Technology

用 Python 快速搭建网游服务器

  1. 1. 为什么? 网游金矿,我们没份……
  2. 2. 技术壁垒 <ul><li>C++ </li></ul><ul><li>硬件( GPU 、 multicore ) </li></ul><ul><li>图形学( DirectX 、 OpenGL ) </li></ul><ul><li>人工智能 </li></ul><ul><li>Linux </li></ul><ul><li>网络编程( IOCP 、 epoll 、 kqueue ) </li></ul><ul><li>分布式系统、数据库 </li></ul>
  3. 3. 救世主?银弹? <ul><li>从来就没有什么救世主(欧仁∙鲍狄埃 ) </li></ul><ul><li>没有银弹( Fred Brooks ) </li></ul><ul><li>所以别指望我今天讲的东西能救大家于水深火热之中,我只是来忽悠大家一起做游戏的。 </li></ul>
  4. 4. 用 python 快速搭建网游服务器 赖勇浩 http://laiyonghao.com 2009.5.1
  5. 5. 网游之困 <ul><li>网游是最具技术含量的软件(国内尤是) </li></ul><ul><li>网游市场是快速变化的 </li></ul><ul><li>人力资源昂贵,硬件日益廉价 </li></ul>
  6. 6. 脚本是网游进步的阶梯 <ul><li>脚本降低人才进入网游行业的门槛 </li></ul><ul><li>脚本是市场快速变化的应对之道 </li></ul><ul><li>脚本使降低人力成本成为可能 </li></ul>
  7. 7. PHP 、 Lua 、 Python 之选 <ul><li>PHP 对高性能的网络编程支持有限 </li></ul><ul><li>Lua 缺乏原生的大型应用的编程模式支持 </li></ul><ul><li>Python 简洁、库丰富、框架多、有案例 </li></ul>
  8. 8. Python + Database <ul><li>Python Database API Specification v2.0 -- PEP 249 </li></ul><ul><li>mysql ( MySQLdb ) </li></ul><ul><li>PostgreSQL ( PyGreSQL ) </li></ul><ul><li>Ms SQL Server ( pyodbc ) </li></ul><ul><li>Oracle ( cx_Oracle ) </li></ul><ul><li>Sqlite 、 bsddb </li></ul>
  9. 9. Distributed <ul><li>twisted </li></ul><ul><li>Pyro </li></ul><ul><li>xml-rpc </li></ul>
  10. 10. 用 Python 实现一个 * 伪 * 分布式系统 DB proxy Game logic server Clients Databases
  11. 11. Python 性能优化 <ul><li>优化网络 I/O </li></ul><ul><li>优化数据库操作 </li></ul><ul><li>优化数据结构 </li></ul><ul><li>优化算法 </li></ul><ul><li>优化业务逻辑 </li></ul><ul><li>用 Cython/C/C++ 重写热点模块 </li></ul>
  12. 12. 与客户端的通信协议 <ul><li>一定要 TCP/UDP 吗? </li></ul><ul><li>一定要二进制吗? </li></ul><ul><li>try http </li></ul><ul><li>try plain text/xml/json </li></ul><ul><li>性能?别跟我谈性能,我懒得跟你谈 </li></ul><ul><li>流量? gzip </li></ul>
  13. 13. 客户端的未来之星 <ul><li>flash 、 flash 、 flash </li></ul><ul><li>flex builder 3 </li></ul><ul><li>MXML 、 ActionScript 3 </li></ul><ul><li>AMF ( pyamf 、 amfphp ) </li></ul><ul><li>native socket </li></ul><ul><li>3D </li></ul>
  14. 14. The End http://laiyonghao.com http:// twitter.com/laiyonghao

×