Articles of django

可扩展性问题(龙卷风)。 无法弄清楚,举起发射

谢谢你们,任何想法/见解都会受到赞赏,因为这使我疯狂。 问题:在应用程序停止之前,只有大约3或4个用户可以同时使用服务器。 目前我们看到正常使用情况下CPU使用率的巨大峰值。 与真实用户相比,这比使用自动化脚本更容易复制,原因不明,但是脚本可能无法很好地模拟真实的使用情况。 我们的架构如下: 应用程序服务器(Tornado) – 单线程,具有asynchronousIO循环。 我们使用Tornado处理与长轮询相关的持久连接,并通过WSGI将所有基本的Web请求发送给Django。 Django ORM用于与数据库交互,尽pipe大多数SQL是手工编码的 MySQL数据库 Nginx提供静态媒体并将其他请求代理给Tornado 目前所有东西都安装在一个“Small”EC2实例上运行。 在机器之间分离服务器对性能没有明显的影响 有关服务器configuration的更多详细信息,请参阅EC2服务器规范: http : //aws.amazon.com/ec2/instance-types/ 。 注意:总而言之,这不是理想的和最可伸缩的设置,但它应该能够处理3个以上的用户! 运行顶部和查看日志显示以下内容: CPU峰值大部分归功于Tornado,每个活跃用户大约有25%的CPU使用率 低的“偷窃时间”,所以我们的CPU能力不会被EC2严重扼杀(再次) 数据库查询全部在0-200毫秒之间,当CPU没有峰值时,通常在峰值期间持续3秒或更长时间 内存使用率低,从不出现高峰 有些事情已经试图无济于事: configurationMySQL缓冲区大小,索引等。 我99%肯定这不是一个花园式的SQL /数据库优化问题 改善查询时间并以各种方式减less查询次数 将服务器放在单独的ec2实例上 多个应用程序服务器之间的代理(这显然是更大的可扩展性,但它不能解决每用户3个用户的问题) 升级EC2实例。 从“微”升级确实有帮助(由于CPU节stream问题),但只是稍微增加了我们的容量 部署在非EC2服务器(Slicehost)上 – 同样的问题 所有服务器都通过简单的testing用例单独进行了负载testing,并且都能够处理1000个同时连接

mod_wsgi / 3.2使用mod_rewrite将解释器上下文与Apache2上的django混合。为什么?

很长的故事 TL;博士: 在Apache下面的configuration与Python解释器上下文混淆。 我有三个使用此设置部署的演示站点,如果经常刷新它们,则会出现竞争情况,并且来自数据库的某些文本/图像会相互混淆。 vhost conf: <VirtualHost *:80> ServerName demo.motion-m.ca ServerAlias *.demo.motion-m.ca Options FollowSymLinks UseCanonicalName Off VirtualDocumentRoot /var/www/vhosts/%0 RewriteEngine On RewriteMap lowercase int:tolower LogFormat "%{Host}i %h %u %t \"%r\" %s %b" vcommon CustomLog /var/log/apache2/demo.motion-m.ca vcommon # Handle everything except the static/media RewriteCond %{REQUEST_URI} !^/(media|static)/(.*)$ RewriteRule ^/(.*) /var/www/vhosts/%{HTTP_HOST}/apache/django.wsgi/$1 RewriteRule . – [E=APPLICATION_GROUP:${tolower:%{SERVER_NAME}}] # Use the subdomain […]

编辑本地文件(运行django和php网站)

现在,我所有的PHP网站(这是我的网站文件夹)的http:// localhost /地址。 但是,我的django网站将位于我的/ Users / myusername / djcode / www /文件夹中。 如何通过inputhttp:// localhost / django /来查看我的django网站,但是当我访问http://localhost/…时 ,仍然可以看到我的php网站? 即使是一个不同的港口将是伟大的,我只想看到这两个网站。

Rackspace for Django Hosting

我正在从事一个项目,我正在寻找可能适合的托pipe解决scheme。 该项目是用Django编写的。 我在看rackspace,很喜欢它的想法和“狂热”的支持。 有没有人有任何在Rackspace托pipeDjango的经验。 安装程序会绕过5台服务器。 一个负载平衡器。 两个网站。 一个数据库。 也许有些监控和额外的东西,另一个是memcache 从基于机架空间特征的angular度来设置类似的东西是多么的容易。 我知道我的unix周围的方式足够好。 是否有使用racspace云文件的djangos网站媒体存储,由用户上传等 提前致谢

Apache + mod_python – 无法configuration服务器

我有Ubuntu 10.04(XEN)VPS。 我想设置Django服务器。 我使用apt-get来安装django软件包,apache,apache-mpm-prefork。 在使用这个configuration之前,我看到“It works!” 标题,当我使用IP /域来访问服务器。 使用configuration后,我看到: Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. 我在这个目录下find了我的django文件夹:/usr/local/lib/python2.7/dist-packages/django/,同时使用find命令将'django-admin.py'(也是这样的文件放在/ usr / local /斌),并把我的发展计算机的文件夹。 所以,这是我的configuration: <Location "/"> SetHandler python-program PythonHandler django.core.handlers.modpython SetEnv DJANGO_SETTINGS_MODULE projectname.settings PythonDebug Off PythonAutoReload Off PythonPath "['/usr/local/lib/python2.7/dist-packages/django','/usr/local/lib/python2.7/sidt-packages/django/bin/projectname'] + sys.path" </Location> <Location "/media/"> SetHandler None […]

IIS 6在同一个域上的多个站点redirect

我有一个win2k3,iis6和Django的问题。 我有一个Django的应用程序,它工作正常,它是在我的域的根。 说http://domain.com/ 我所要做的就是从http://domain.com/foo/bar/提供这个应用程序。如果这不是一个Django的应用程序(例如:ASP或PHP),我只需要将我的文件移动到wwwroot / foo / bar 我想出了唯一的解决scheme是这样的:我创build了两个网站,第一个是我的django应用程序,它是在http://domain.com:8080 第二个虚拟目录foo和一个在另一个像一个域/富/酒吧,他们指向http://domain.com:8080/ (我从虚拟目录中select“redirect到URL”,并检查“确切上面input的url“) 。 这个工程,但url不被掩盖,所以地址栏显示http://domain.com:8080 任何帮助将不胜感激

如何在EC2上创build一个稳定的Django / Python模板?

我目前在EC2上的Django模板总是使用一些易于安装的包,因为没有匹配的yum包。 不幸的是,易于安装具有令人不安的高故障率。 每隔几周,新的易安装软件包将无法在实例启动时安装。 目前它是pyOpenSSL(对于Python 2.6来说没有yum) 其他Django / Pythonpipe理员如何在EC2上处理这个问题? 你有所有的tarballs作为附件? 这似乎是我要去的地方…

EC2或GAE的python/ Django应用程序

我目前正在决定是否使用EC2或GAE为我的Django应用程序。 我已经做了一些研究。 在部署一个数据库驱动的Django应用程序与以下方面: — high on db reads / moderate db writes in mysql — memcached — ffmpeg (though not for video transcoding) 各有什么优点/缺点? 我主要考虑的是: — ease of setting up — ease of scaling up /down — speed (for EC2 this is easy to figure out) — uptime 另外,他们如何将成本与GAE最近的增长进行比较? 谢谢。

提供适度CPU密集的Django WSGI应用程序的最佳位置

我最近用Django做了一个web应用程序,并且(在开发模式下,我一直在使用它),它运行的很好。 我是学者,需要快速find我的应用程序托pipe的地方,以便我可以提交我的论文。 该应用程序使用芹菜(任务pipe理/排队服务)来pipe理和排队并行工作等,所以它不应该炸毁,如果多人一次使用它。 但是这需要相当数量的CPU时间(每个提交的作业需要使用大约4个核心x 5-10分钟)。 我的实验室在主机托pipe,但我不确定这是适当的,因为我的工作密集的CPU性质。 另外,我担心通过电子邮件连接Django是多么困难(我不得不要求每个安装的软件包等)。 我已经阅读了关于Google App Engine但并不确定在超过空闲的CPU限制时它的价格是多less。 而且我使用了Amazon EC2 (只是在没有足够内存的情况下在命令行中运行一些作业)。 对于嗡嗡声营销抱歉; 我只是想让你知道我已经看过它。 什么是最好的方法1)让我的应用程序快速托pipe和2)避免支付一个离谱的金额。 诚实地说,购买一个Linux机器并把它连接到大学以太网是最容易的。 这是如此的web 1.0,但它只是觉得很容易把所有的东西。 我之前通过大学做过一个简单的CGI,但还没有做过 非常感谢你的帮助。

一些Web服务器(切诺基)的权限问题

我是新的Linuxpipe理,我正在configuration一个切诺基Web服务器。 我正在使用Archlinux,所以我有一个拥有/ srv / http的http用户。 另一方面,我有一个用户称为“耶稣”是在http组内。 Cherokee is working with user and group http (http:http) 所以我对/ srv / http做了一些修改。 我向该组添加了写入权限,然后我更改了所有者和组: drwxrwxr-x 3 jesus http 4096 Oct 25 14:00 http 它就像: 所以现在Python可以在那里写他的.pyc文件(我认为,切诺基告诉python创build,因为切诺基是能写在那里)。 我的问题是:这是许可的东西是否正确? 有人告诉我,该组不应该有写权限,如果我有http文件夹(和我的网站里面),更好: drwxr-xr-x 3 http http 4096 Oct 25 14:00 http 所以切诺基将能够写在里面,因为http拥有文件夹。 呃,我很困惑。 那么,什么样的权限应该有我的http文件夹,里面的一切,以及用户和组应该拥有的? 我只需要我的个人网站运行没有大的安全问题:P 谢谢! PS:也许这是相关的。 当python创build.pyc文件时,它们是-rw-r-r–。 那也正确吗?