Articles of django

PostgreSQL在Ubuntu 12.04中使用

我正在尝试使用postgres(干净安装)在Ubuntu 12.04发行版上运行django。 为了让它运行,它曾经是你必须编辑/etc/postgresql/9.1/main/pg_hba.conf文件。 但是,当我看这个版本时,没有/etc/postgresql目录,只有/etc/postgresql-common并且看起来并不是一个类似于该目录下的pg_hba.conf的文件。 另外,虽然我有你的耳朵,这是我想要做的改变: # change local all all ident # to local all all trust 这是正确的,我想我看到,它应该改为同行(不信任),如果正确,为什么? 更新:这是postgres的版本 psql (PostgreSQL) 9.1.3

假设我没有提供任何静态内容,我是否需要离开Apache?

我目前运行Apache + Django。 很好用。 很多人,特别是这个线程: https : //stackoverflow.com/questions/475386/apache-vs-nginx-vs-lighttpd-which-is-simpler-to-configure-and-administer说nginx /切诺基是最新的,更喜欢使用的networking服务器。 如果我没有从Apache提供任何静态内容,是否有任何理由使用Nginx或其他任何东西? 我目前通过Amazon S3提供静态内容。

Django轻量级Web服务器,工作量小

我正在Django上编写一个小应用程序,这个应用程序将被用作通常由文本文件configuration的一组应用程序的pipe理界面。 它不会做太多的事情(parsing用户input,将数据库条目转换为平面文件,并显示带有信息的漂亮表格),而且最有可能一次最多由一个用户使用。 唯一的限制是它运行的服务器是低configuration的(Pentium M 1,8GHz,512MB RAM),我希望它的大部分计算能力可用于托pipe应用程序,而不是pipe理界面。 为了logging,我正在使用CentOS 5。 我可以使用什么networking服务器? 到目前为止,我收集了以下选项和意见: Apache可能对这种部署很大 lighttpd + FCGI – 可能不稳定 lighttpd / nginx作为rev proxy + django web服务器 – 看起来很奇怪,因为我以为django web服务器是为了开发/debugging目的 你能推荐我一个很好的解决scheme吗? 我并没有把注意力集中在很大的工作负载或并发性上(因为大多数人提出类似的问题),我只是希望它在空闲或单个会话时尽可能less地使用RAM和CPU时间。 此外,请注意,我没有太多的networking服务器部署,反向代理等经验(虽然我知道的基本知识,可以find我的方式与谷歌),所以我会很感激有经验的人的帮助有这样的问题。

初学者安装EC2 bitnami栈上的第一个应用程序

初学者问题在这里。 对于一直在做这些事情的人来说,这可能是很明显的。 但是我在设置运行在EC2 bitnami实例上的django时遇到了困难。 我设置我的服务器,我可以login。只是为了testing这个我安装民意调查的例子。 下面是我执行的命令来运行。 问题: 我在这里做错了什么? 我如何让我的基本民意调查页面显示? 另外,有什么最佳实践,我应该遵循configuration一个活的服务器? 任何一步一步都非常感激。 —-命令—– $ cd /opt/bitnami/projects/Project #directory already exists $ sudo python manage.py startapp polls $ sudo chown -R bitnami * # tired of doing sudo.. Good move or not? $ vim polls/models.py # matches the example $ vim polls/views.py #see below $ vim urls.py # […]

即使打开了端口,也无法在Amazon EC2上打开Web应用程序

我有一个t1.micro实例与公共DNS类似于以下内容: ec2-184-72-67-202.compute-1.amazonaws.com (一些数字已经改变) 在这个实例中,我正在运行下面的Django应用程序: $ sudo python manage.py runserver –settings=vlists.settings.dev Validating models… 0 errors found Django version 1.4.1, using settings 'vlists.settings.dev' Development server is running at http://127.0.0.1:8000/ 我已经通过AWS控制台打开了port 8000 : 在Chrome中导航到以下url时,我收到以下消息: Oops! Google Chrome could not connect to Oops! Google Chrome could not connect to : http://ec2-184-72-67-202.compute-1.amazonaws.com:8000 我究竟做错了什么? 用netstat: netstat -lan | grep 8000 tcp […]

与新贵芹菜 – 进程意外死亡

当我用新贵运行芹菜时,过了一会儿,孩子的过程或主要过程死亡,没有任何痕迹。 我正在使用的Upstart脚本( /etc/init/celery ): description "celery" start on runlevel [2345] stop on runlevel [!2345] kill timeout 20 # console log setuid *** setgid *** script chdir /opt/***/project/ exec /opt/***/virtualenvs/***/bin/python manage.py celery worker –settings=settings.staging -B -c 4 -l DEBUG end script respawn 当运行exestly相同的命令没有暴发户(手动运行的exec部分),一切工作正常。 随着respawn节,主进程将会死亡并重新生成,而丢失的subprocess仍然存在,导致内存溢出。 没有它,stream程就会消失,直到没有工人离开。 芹菜产生了一个主进程和工作进程(在这种情况下,其中4个)。 我也尝试使用eventlet而不是多处理(1个主,1个subprocess)来运行它,但结果是相似的。 有没有人有过这种行为? 更新: 芹菜以-c N运行时,以N + 2过程开始,其中N + 2是工人(另外两个是什么?)。 我开始认为这是与expect节有关,但不知道应该是什么值。 […]

分析uwsgi strace日志以找出为什么需要高CPU使用率

我正在通过uwsgi与nginx运行django网站。 问题是当stream量变大时,uwsgi进程需要很多的CPU时间。 相同的configuration在testing服务器上正常工作,siege / ab模拟大量的并发stream量。 这里是uwsgi进程的一个strace日志。 http://dl.dropbox.com/u/43017476/strace.log 还有一些sysctl: fs.file-max = 128000 net.core.rmem_max = 16777216 net.core.wmem_max = 16777216 net.ipv4.tcp_rmem = 4096 87380 16777216 net.ipv4.tcp_wmem = 4096 65536 16777216 net.core.netdev_max_backlog = 4096 net.ipv4.tcp_max_syn_backlog = 4096 net.core.somaxconn = 250000 net.ipv4.tcp_keepalive_time = 300 nginx conf与Google的其他教程非常相似。 我一直在试图弄清楚,但没有运气。 不过,我发现了很多这样的东西: 22:12:02.932276 read(8, "\7\0\0\2\0\0\0\2\0\0\0", 16384) = 11 22:12:02.932504 poll([{fd=8, events=POLLIN|POLLPRI}], 1, 0) = […]

石墨不运行

我目前正在尝试使用石墨wiki的这些说明在gentoo盒子上安装石墨0.9.9。 基本上,它使用apache和mod_wsgi前置石墨。 一切似乎都进行得很顺利,除了apache /石墨webapp似乎从来没有回复网页浏览器的响应(浏览器不断地等待加载页面)。 我打开了石墨debugging信息,但是日志文件中唯一的消息就是这个,在info.log中一遍又一遍地重复(pid总是在变化): Thu Feb 23 01:59:38 2012 :: graphite.wsgi – pid 4810 – 重新加载search索引 这些说明已经在我之前在Ubuntu机器上设置石墨。 我怀疑,mod_wsgi是死亡,但我已经证实,mod_wsgi工作正常时,不提供石墨web应用程序。 这是我的graphite.conf vhost文件的样子: WSGISocketPrefix /etc/httpd/wsgi/ <VirtualHost *:80> ServerName # Server name DocumentRoot "/opt/graphite/webapp" ErrorLog /opt/graphite/storage/log/webapp/error.log CustomLog /opt/graphite/storage/log/webapp/access.log common # I've found that an equal number of processes & threads tends # to show the best performance for […]

与Uwsgi设置的麻烦

我有一个uwsgi ini,看起来像这样: [uwsgi] socket = :8001 processes = 4 master = true wsgi-file = /project/dev/myproject/conf/deployment/wsgi/dev/myproject-site.wsgi harakiri = 30 daemonize = /logs/log/myproject/myproject-uwsgi.log uid = www-data gid = www-data plugins-dir = /usr/lib/uwsgi/plugins plugins = python34 我似乎无法加载python34插件: found fd 3 mapped to socket 0 (:8001) running /usr/local/bin/uwsgi *** has_emperor mode detected (fd: 5) *** [uWSGI] getting INI configuration […]

configurationNginx只允许指定的主机

我正在DigitalOcean上运行一个Django项目(使用Nginx,Gunicorn和Postgres),并且在settings.py中指定了“允许的主机”,如下所示: ALLOWED_HOSTS = ['sub.domain.tld'] 根据DigitalOcean自己设置的内容,根据我发现的博客文章,我还修改了我的页面(/ etc / nginx / sites-available / django)的Nginx设置: if ($host !~* ^(sub.domain.tld)$ ) { return 444; } location / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; proxy_pass http://app.server; } 我仍然继续从我的Django项目接收电子邮件,就像这样: “无效的HTTP_HOST标题:'1111.ip138.com'。您可能需要将u'1111.ip138.com'添加到ALLOWED_HOSTS。 当我从浏览器访问网站时,一切似乎都很好。 你能让我知道我的configuration问题在哪里吗? 谢谢你,托比亚斯