# I have 3 lists:
L1 = [1, 2, 3, 4, 5, 6, 7, 8, 9]
L2 = [4, 7, 8]
L3 = [5, 2, 9]
# I want to create another that is L1 minus L2's memebers and L3's memebers, so:
L4 = (L1 - L2) - L3 # Of course this isn't going to work
Run Code Online (Sandbox Code Playgroud)
我想知道,做到这一点的"正确"方法是什么.我可以用很多不同的方式来做,但Python的风格指南说应该只有一种正确的方法来做每件事.我从来不知道这是什么.
首先,我正在使用Django.Django提供的gzip中间件工作得很好.Nginx还提供了一个gzip模块.使用Nginx的gzip模块会更有意义,因为它纯粹是用C实现的,或者我还缺少其他性能考虑因素.
其次,Django不会在200字节以下进行gzip.这是因为当压缩输出小于此时,gzipping太昂贵而没有任何值?
第三,我正在构建的API几乎是纯粹的动态,几乎没有缓存.gzipping是否足够昂贵,以至于在这种情况下使用它是不实际的(相比之下,我可以在网络服务器上缓存gzip压缩输出)?
我一直在使用apt-get install uwsgi
为我的Django应用程序安装uWSGI.今天,我意识到我需要一个在uWSGI 1.1之前不可用的功能,而Ubuntu 12.04.1在1.0.x之后没有任何功能,至少根据我的apt-get install uwsgi=1.1
尝试.所以,我用过:
pip install http://projects.unbit.it/downloads/uwsgi-lts.tar.gz
Run Code Online (Sandbox Code Playgroud)
在这样做之后,我收到一条消息,规定了/usr/local/bin/uwsgi
启动程序的用法.从源代码编译时我不是大师,但我的理解是,当你这样做时,/etc/
目录中什么都不会改变.它是否正确?如果没有,为什么我没有/etc/uwsgi/
目录,更具体地说,是一个/etc/uwsgi/apps-enabled/
目录?我是否应该在从源代码安装uWSGI时创建目录?考虑到在文档中没有提到这一点,我对此犹豫不决(我不想要一些意外工作的东西,等等).
我很难理解信号如何进入我的应用程序(以及它们如何工作期).以下是我认为适用的三个方面(根据我目前的知识):
我是完全偏离基地(我觉得我可能会).我收到信号和多线程混淆了吗?如果是这样,他们在应用程序中进行比较吗?它们只是用于解耦吗?另外,确保你提前实例化它们并且不使用本地函数(因为它们会收集垃圾)是什么?有人可以详细说明吗?我是否应该将它们全部放入请求中间件中以便我不必担心?
首先:
什么我不明白是怎么每个不同的"其他"方式的工作相比,像UWSGI,在幕后.您的服务器(Nginx等)是否将请求路由到您的WSGI应用程序,UWSGI为每个路由到它的请求创建一个新的Python解释器?与其他更传统/猴子修补的方法有多少不同的是WSGI(除了WSGI提供的不同,更简单的Python接口)?我失踪了什么灯泡?
如果我在PostgreSQL中有一个带有绝密数据数据库的服务器,我的密码实际上是不可能猜到的(手工生成的各种奇怪字符的128个字符串).服务器密码实际上也是不可思议的.
除了密码猜测之外,从这个数据库中获取数据有多容易?
我试图了解有人获得对我服务器硬盘的物理访问所涉及的风险.
我有一个伙伴为一个列出待售汽车的人运行一个网络应用程序.有几千个客户使用它,每个客户在数据库中有数百甚至数千行(有些已经持续了5年,每月销售数百辆汽车,每次销售10行(评论,消息,等等)).他已经在一个SQL Server数据库中运行这个系统,在一个物理服务器中使用20GB或RAM,并且一直使用几个处理器,没有任何问题.这是某种奇迹吗?
就像大多数程序员一样,我不是DBA而且只是过去了,感谢ORMs等.无论我看到什么,人们都在讨论是否需要为Web应用程序的大用户进行分片或获取单独的数据库服务器.为什么是这样?拥有大量或多行的大型DB是否真的效率低下?我是否应该计划使用Cassandra或其他东西,或者我可以依靠与Postgres一起扩展吗?
我有充满垃圾的临时目录,都以__temp__
(例如__temp__user_uploads
)开头,我想用清理功能删除它.我的功能尝试是运行:
find . -name __temp__* -exec rm -rf '{}' \;
Run Code Online (Sandbox Code Playgroud)
如果我运行命令并且有多个__temp__
目录(__temp__foo
和__temp__bar
),我得到输出:
find: __temp__foo: unknown option
Run Code Online (Sandbox Code Playgroud)
如果我运行命令并且只有一个__temp__
目录(__temp__foo
),它将被删除,我得到输出:
find: ./__temp__foo: No such file or directory
Run Code Online (Sandbox Code Playgroud)
为什么命令不起作用,为什么它不一致,我该如何解决呢?
我正在艰难地绕着Docker的可能性包围我的大脑,所以请原谅我的无知:
我可以获取我创建的数据库服务器的Docker镜像,并通过某种机制将其直接部署到新的EC2服务器吗?或者,我是否必须创建EC2服务器,然后在服务器上安装Docker,然后将映像拉入服务器等.
我也完全可以为这个过程的任何部分编写额外的代码.我只是不确定它是否可行.
我是否误解了Docker的最大用途?
使用Twitter Bootstrap一段时间后总是想要更多管理UI功能,我决定尝试使用Semantic UI.语义文档比Bootstrap更简洁,但每个单独的工具都很容易实现.但是,我已经开始创建一个基本的用户界面来尝试语义用户界面,我很难搞清楚一些基本的东西,比如什么用作Bootstrap的合适替代品.container
等.
django ×3
database ×2
python ×2
amazon-ec2 ×1
aop ×1
apt-get ×1
bash ×1
compression ×1
cracking ×1
css ×1
deployment ×1
docker ×1
find ×1
gzip ×1
linux ×1
mod-wsgi ×1
nginx ×1
pip ×1
scalability ×1
security ×1
semantic-ui ×1
ubuntu ×1
uwsgi ×1
wsgi ×1