航行日志

追寻梦想


  • 首页

  • 分类

  • 关于

  • 归档

  • 标签
航行日志

基于SAE Python开发的两个应用

发表于 2013-04-02 | 分类于 Python

1.一款运行在SAE Python上的轻型博客程序

示例站:http://saepy.sinaapp.com

源码地址:https://code.google.com/p/sae-python-tornado-blog/

2.SAE-V2EX 一个运行在SAE上的类似v2ex的轻型论坛

示例站:http://myskoda.sinaapp.com

源码地址:https://code.google.com/p/sae-v2ex/

 

 

航行日志

SAE上部署Django (Mac OSX)

发表于 2013-03-30 | 分类于 Python

转自:http://765i.cn/sae上部署django-mac-osx/

Deploying Django on SAE (Mac OSX)

Sina App Engine(简称SAE)是新浪研发中心推出的国内首个公有云计算平台,支持PHP,MySQL,Memcached,Mail,TaskQueue,RDC(关系型数据库集群), KVDB(非关系型数据库)等服务。我的博客就是假设在SAE上的,云平台的好处就是省去了自己搭建环境、维护服务的时间,而且根据你自己服务的使用公共资源的多少来收费。用户第一次注册的时候赠送一定量的资源,而且还可以通过认证来获得更多的免费资源。更多关于SAE
新浪云平台

最近SAE开放了了Python的测试,好不容易通过了申请,虽然已经很早了,但是还是很兴奋的。最近在学习Django,就赶快尝试着部署一个Django到SAE。

第一部分

现在就开始吧,先看看在本地环境需要做些什么
1.为SAE项目创建一个目录,把我们需要的一切都放在这里
mkdir sae-django
cd sae-django

2.创建一个虚拟环境
我们要知道为什么需要创建一个虚拟环境

如果你和我一样,在做Django应用开发中喜欢使用一些Django第三方扩展来进行Django的快速开发,那么可能就会在自己的Linux系统中的Python目录中大量的安装过一些扩展库了,但A应用用到的扩展B应用又不一定需要用到。当然一个应用开发完成,可以需要写一些安装手册这类的,这时你可能会有些茫然,到底哪些扩展是自己这个应用所用到的?这样看来一个“干净”的开发环境还是很有必要的。

利用Virtualenv能快速的搞定这样一个开发环境,事实上不仅仅是Django需要,你在做任何Python开发的的时候,都可以考虑做这么一个“干净”的虚拟环境来进行开发,这样就不必担心搞乱自己的Python主目录时的库程序了。具体而言,做这么一个开发环境,可能会需要用到pip,virtualenv,easy_install。
来看看MacOSX下是怎么来安装我们需要的这些工具。我用的是Lion,Mac有一个默认的工具easy_install用来安装各种Package。

a. 安装virtualenv。
用管理员权限进行安装,命令:
sudo easy_install virtualenv
这步完成后,以后就可以进接使用virtualenv来进行Python开发环境的创建了。
b. 环境创建
virtualenv mysite
会得到下面的返回结果
New python executable in mysite/bin/python
Installing setuptools…………done.
Installing pip……………done.
这时会在mysite目录中生成三个Python所需的目录。

c.启用虚拟环境
进入mysite目录,执行:
source bin/activate
这里你会发现原来的命令提示符发生了变化,多了一个括号,里面的字符即为你所创建的虚拟环境的名称。接下来的所有模块的安装,都只会直接安装到项目目录中去。

前期的准备工作就完成了,接下来就看看怎么安装django,并把django部署到SAE上吧

第二部分

4. 准备部署到SAE

a.我们首先是要在SAE上创建新的应用

http://sae.sina.com.cn/?m=myapp&a=create

b.在本地检出SVN代码(mydjangoapp),就在一开始创建的sae-django目录下
svn co https://svn.sinaapp.com/mydjango
c.建立一个数字为目录名的版本目录
mkdir 1
cd 1
d.新建文件index.wsgi,内容如下

import os
import django.core.handlers.wsgi
import sae
os.environ['DJANGO_SETTINGS_MODULE'] = 'my_first_django.settings'
application = sae.create_wsgi_app(django.core.handlers.wsgi.WSGIHandler())

e.安装Django
使用PIP进行Django的安装,SAE当前仅支持1.2.7。
当前我们还是在虚拟环境下,执行命令:
pip install django==1.2.7
安装完成后即可进行项目的开发工作了。
PIP有一个很不错的功能,可使用该功能来自己生成项目安装的扩展,而其他用户在使用你的应用的时候,也可以方便的通过这种方式,完成扩展的再次安装。
a.扩展生成:
pip freeze > prj.txt
会在当前目录中生成这样一个文本文件,包含扩展名及相应的版本号。
b.下次进行安装
pip install -r prj.txt
自动装所有模块一次些安装完成。
需要注意的是,你每次开始继续开发项目的时候,都需要使用source进入到虚拟环境后才可以正确的进行项目的开发。
f.初始化django应用:
django-admin.py startproject my_first_django
g. SAE需要从django安装目录复制admin的media目录到版本目录下, django的安装路径是
mysite/lib/python2.7/site-packages
cp -rf django/contrib/admin/media/ .

最后的目录结构是在sae-django下
mydjango/ mysite/
——————————-
1/
——————————-
index.wsgi media my_first_django

h. 提交代码
访问 http://$yourappname.sinaapp.com ,就可看到Django的欢迎页面了。

航行日志

开发者如何提升和推销自己

发表于 2013-03-20 | 分类于 程序人生

1.写博客,至少每月发布一篇文章;
2. 参与开源;
3. 不要频繁跳槽,也不要举步不前;
4. 放眼未来,着手实际;
5. 写你自己的文档;
6. 简洁是灵魂;
7. 在公共场合演讲;
8. 成为现实主义者;
9. 擅于用工具解决疑难杂症;
10. 保持谦虚。

10 steps to becoming the developer everyone wants

 

航行日志

亚马逊向网络出版商推“发送至Kindle”按钮

发表于 2013-03-20 | 分类于 随笔

  新浪科技讯 北京时间3月20日下午消息,亚马逊周二宣布,从现在起,该公司将允许出版商在其网站和WordPress博客上添加“发送至Kindle”(Send to Kindle)按钮。

  美国《华盛顿邮报》、《时代》杂志和博客Boing Boing目前均已开始使用这个按钮。很显然,亚马逊将“发送至Kindle”功能,当作了Pocket、Instapaper等稍后阅读服务的替代用具。

  亚马逊在Kindle博客中写道,“‘发送至Kindle’按钮让你可以将内容轻松发送至Kindle,然后在方便时阅读。只要发送一次,你即可随时随地在任意一台Kindle设备,以及iPhone、iPad和Android智能手机与平板电脑的免费Kindle阅读应用上浏览内容。不用再去四处寻找吸引你眼球的网站或博客——只要打开Kindle,然后将所有内容发送至上面即可。对于那些想要从网上搜集内容,以便在工作和学习中使用的人来说,‘发送至Kindle’按钮同样益处多多。”

  “发送至Kindle”按钮也是亚马逊推出的一系列稍后阅读服务中的最新产品。去年,亚马逊面向谷歌Chrome浏览器发布了“发送至Kindle”按钮,后来又增加了对Firefox浏览器的支持。用户已经可以通过电子邮件的方式,将文件发送至Kindle设备,或是通过桌面应用传送。

  不过,亚马逊面向浏览器插件和出版商网页应用发布“发送至Kindle”按钮,则是希望让Kindle设备和相关应用,成为阅读各类内容而不仅是电子书的捷径。(扬帆)

航行日志

八字不合

发表于 2013-03-19 | 分类于 MAC使用

今天看到一篇吐槽Parallels Desktop的文章,想想我和这个东东也是八字不合吧。很难稳定开启,而且还会让整个MAC系统宕掉,害我关机都关不掉。

看来我也换VM算了,晚上回去就删了他。

航行日志

一杯茶

发表于 2013-03-18 | 分类于 成长路上

今天和小顾复盘的时候,我咳嗽的厉害,他突然腾腾的跑到厨房,端了喝水的杯子,问奶奶里面水能不能喝,确认能喝后,送到了我的面前。谁说女儿是妈妈的小棉袄!小顾也是爸爸的小棉裤!

Posted using Tinydesk blog app

航行日志

查看端口号是否被占用(情况 命令)

发表于 2013-03-11 | 分类于 Linux

转:http://www.hackbase.com/tech/2009-05-18/52801.html

netstat -ano   我们可以知道某一端口被那个进程(对应PID)占用;  然后我们可以打开任务管理器;查看某一PID对应的进程名;  如果PID没有显示,菜单》查看》选择列》选中PID即可;  得知进程后,我们 …



netstat -ano

我们可以知道某一端口被那个进程(对应PID)占用;
然后我们可以打开任务管理器;查看某一PID对应的进程名;
如果PID没有显示,菜单》查看》选择列》选中PID即可;
得知进程后,我们可以将进程杀掉;修改其使用的端口。
假如我们需要确定谁占用了我们的9050端口

1、Windows平台
在windows命令行窗口下执行:
C:\>netstat -aon|findstr “9050″
TCP 127.0.0.1:9050 0.0.0.0:0 LISTENING 2016
看到了吗,端口被进程号为2016的进程占用,继续执行下面命令:

C:\>tasklist|findstr “2016″
tor.exe 2016 Console 0 16,064 K

很清楚吧,tor占用了你的端口

2、AIX
$netstat -Aan|grep 30542
f10000f303321b58 tcp4 0 0 .30542 . LISTEN
$rmsock f10000f303321b58 tcpcb
The socket 0×3321800 is being held by proccess 692476 (db2sysc).

这个我就不解释了

3、Linux
$netstat -pan|grep 2809
tcp 0 0 0.0.0.0:2809 0.0.0.0:
LISTEN 9493/java
del.icio.us Tags: aix,windows,tips
NETSTAT [-a] [-b] [-e] [-n] [-o] [-p proto] [-r] [-s] [-v] [interval]

-a 显示所有连接和监听端口。

-b 显示包含于创建每个连接或监听端口的可执行组件。在某些情况下已知可执行组件
拥有多个独立组件,并且在这些情况下
包含于创建连接或监听端口的组件序列被显示。这种情况下,可执行组件名
在底部的 [] 中,顶部是其调用的组件,等等,直到 TCP/IP 部分。注意此选项
可能需要很长时间,如果没有足够权限可能失败。

-e 显示以太网统计信息。此选项可以与 -s选项组合使用。

-n 以数字形式显示地址和端口号。

-o 显示与每个连接相关的所属进程 ID。

-p proto 显示 proto 指定的协议的连接;proto 可以是
下列协议之一: TCP、UDP、TCPv6 或 UDPv6。
如果与 -s 选项一起使用以显示按协议统计信息,proto 可以是下列协议之一:
IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 或 UDPv6。

-r 显示路由表。

-s 显示按协议统计信息。默认地,显示 IP、
IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6 的统计信息;
-p 选项用于指定默认情况的子集。

-v 与 -b 选项一起使用时将显示包含于
为所有可执行组件创建连接或监听端口的组件。

interval 重新显示选定统计信息,每次显示之间
暂停时间间隔(以秒计)。按 CTRL+C 停止重新
显示统计信息。如果省略,netstat 显示当前
配置信息(只显示一次)

 


航行日志

小顾教棋

发表于 2013-03-10 | 分类于 成长路上

小顾昨天教他妈妈下棋,边下边讲解,点着其中一步,学着梁老师的口气说:“嗯,这步棋下的有点臭臭!” 小顾,你不要这么搞笑好不好。

航行日志

SAE Python平台正式对外开放了

发表于 2013-02-28 | 分类于 程序人生

 SAE Python平台正式对外开放啦!

 SAE Python平台于2011年8月开始开发,2012年年初发布测试版,经过一年多的测试升级后,2013年2月底正式结束公测,对外开放。

 即日起,所有SAE用户均可自由创建Python应用。所有Python应用,除流量计费外,HTTP/HTTPS/Cron/TaskQueue的CPU计费项将完全免费。

 SAE Python平台具有以下特点:

  1,完全基于Python2.7,迁移成本低;
  2,完全支持主流框架,Django、Flask等;
  3,支持SAE所有服务,Cron、TaskQueue、KVDB、MySQL、Storage等;
  4,对于商业应用支持代码加密,用户可直接上传pyc;
  5,目前已经有近万应用在其上运行,经过SAE商业应用检验,可靠性高;
  6,低成本,目前仅针对流量做计费,而Python虚拟机完全免费;

  7,智能路由并实现应用自动伸缩(完全无缝/不影响访问/开发者无需操作);

 详见:http://sae.sina.com.cn/?m=devcenter&catId=289

 2013,让我们一起开启一段难忘、愉快的python旅程。

 如有相关问题请到开发者论坛Python版块交流反馈。http://cloudbbs.org/forum.php

                              SAE官方
                              2013-02-28

航行日志

小顾今晚下的一盘,右下角是捡来的便宜,本来输了。

发表于 2013-02-28 | 分类于 成长路上

2013/02/25

1…345…15
Wooley Gu

Wooley Gu

我将去向哪里

147 日志
22 分类
95 标签
友情链接
  • 栖霞棋院
© 2016 Wooley Gu
由 Hexo 强力驱动
主题 - NexT.Pisces