pyresって pyres は Redis をバックエンドに使った、ジョブキューサービスを 提供するPythonモジュールです。 ワーカに実行させたいジョブをあらかじめ登録しておき、 実行したい時にエンキューして使います。 同じような用途のモジュールには Celery なんかがあります。
pyresって pyres は Redis をバックエンドに使った、ジョブキューサービスを 提供するPythonモジュールです。 ワーカに実行させたいジョブをあらかじめ登録しておき、 実行したい時にエンキューして使います。 同じような用途のモジュールには Celery なんかがあります。
コードレビューで土日に安寧を ソーシャルゲームは、ユーザアクセス集中と、それに伴うユーザデータ増加によって劇的に負荷が上がり、(主に土日に)サービスに影響を与えがちです。 問題があるコードは、たとえ負荷テストを行っても、作成したシナリオによっては見つけられない可能性もあります。 そういった見えない不安を払拭するという意味でも、コードレビューは重要だと思っています。 【ステキポイント】 ・ ソースを見ることにより、時限爆弾が土日に爆発するのを解除 ・ スキル共有によってメンバーがレベルアップすることにより、土日に爆発する時限爆弾の設置確率低下 まぁまとめると これに尽きます(4歳の息子談) 今は、gitのプルリクエストという強力なレビューツールもあり、敷居がかなり低くなったのでオススメです! チェックするポイントは5つ コードレビューを行うにあたり、*「どんなところをチェックすればいいのか分
勉強会用資料です. django1.8のチュートリアルを辿りつつ説明していきます. https://docs.djangoproject.com/en/1.8/intro/tutorial01/ 日本語の公式ドキュメントはバージョン1.4が最新なので若干違いが有りますが大まかな流れは一緒なので一読するのもいいと思います. http://django-docs-ja.readthedocs.org/en/latest/intro/tutorial01.html 公式サイトの説明ではプロジェクト名がmysiteになっていますが, tutorialプロジェクトとして作成していきます. 追記(2015/11/18):チュートリアルのチュートリアルを作成しました. → チュートリアルまとめ 環境 OS:Mac OSX10.11 python:3.4.2 django:1.8.5 ソースコード git
Brett Slatkin氏による書籍 "Effective Python: 59 Specific Ways to Write Better Python" より、アイテム一覧(目次)を抄訳。Python 2.x/3.x両バージョンを対象とする。 http://www.effectivepython.com/ http://www.informit.com/store/effective-python-59-specific-ways-to-write-better-python-9780134034287 第1章: パイソニック思考(Pythonic Thinking) 1. 使っているPythonバージョンを知ろう 2. PEP 8 スタイルガイドに従おう 3. bytes, str, unicodeの違いを知ろう 4. 複雑な式の代わりにヘルパ関数を書こう 5. シーケンスのスライ
Welcome, fellow Pythoneer! This is a small book of Python anti-patterns and worst practices. Learning about these anti-patterns will help you to avoid them in your own code and make you a better programmer (hopefully). Each pattern comes with a small description, examples and possible solutions. You can check many of them for free against your project at QuantifiedCode. Why did we write this?¶ Sho
はじめに 去年ぐらいからPython製のコマンドラインのツールをいくつか作っていて、構成もだいぶ固まってきたので、まとめてみる。規模としては1ファイルでは終わらないぐらいで、関数の数も数十になってユーティリティを作ったり、クラスをいくつか作らないと、保守がしにくいような規模のものを想定しています。工数としては1日では終わらないけど、2週間はかからない程度の規模を想定。 構成 ということで、まず構成をさらしてみます。 こんな感じ。 SAMPLE_PROJECTレポジトリがあったとして、その具体的な構成が以下。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 . ├── README.md ├── RELEASE.md ├── TODO ├── bin │ ├── command1 │ ├── comm
Pants¶ Pants is a lightweight framework for writing asynchronous network applications in Python. Pants is simple, fast and elegant. Pants is available under the Apache License, Version 2.0 An incomplete feature list: Single-threaded, asynchronous, callback-oriented. TCP networking - clients and servers! IPv4, IPv6 and UNIX socket families. SSL/TLS support for all that security stuff. Basic schedul
今日からすぐに使えるデプロイ・システム管理ツール ansible 入門¶ タイトルおよび本文の大部分を shiumachi先生の記事 から拝借しまし た。大変感謝しております。fabric素敵ですよね。 ansibleのインストール¶ たったこれだけです。 試してみる(1): yumコマンドをansibleから実行¶ ここでは以下のようなサーバー設定を例に取ります。 サーバ名: ec2-XXX.ap-northeast-1.compute.amazonaws.com ユーザ名: ec2-user 公開鍵などは .ssh/config で済んでいるものとします。 Ansibleを使う場合、まず適当なディレクトリを作成し、適当なファイルを作成 してください。.ymlという拡張子をつけるのがおすすめです。今回はyum.ymlにします。 次に、以下の内容を書き込みます。YAML形式ですので、インデ
waf - The flexible build system http://code.google.com/p/waf/ wafというものを最近知り一目惚れしてしまったので、紹介記事を書きます。ユーザーが増えると嬉しいな。 wafとは何か?特徴・利点・使うべき理由 wafはPythonベースのビルドシステムです。同様のことを行うツールとして、Autotools、Scons、CMake、Antなどがあります。Sconsからの派生で、比較的新しいソフトウェアです。 分かりやすい Pythonで書かれており、スクリプトもPythonで記述します。シェルスクリプトと謎のマクロが入り混じるAutotoolsや、独自言語のCMakeなどに比べて扱い易いです。Pythonを知っていれば非常にすんなりと使いこなすことが出来ます。Pythonを知らなくても、他の独自言語を覚えるよりは実りがあるかと思います
処理時間のながーーいバッチ処理のテストをすることが多い今日この頃。昨夜、「バッチおわったよ!」の通知を IP Messenger 使ってやれないかなぁと思ってソース見てみたら、プロトコルの説明書きが付いてて分かりやすかった。 #!/usr/bin/env python # -*- coding: utf-8 -*- import socket import random IPMSG_VERSION = 0x0001 IPMSG_SENDMSG = 0x00000020 LOCAL_USER = 'mitszo' LOCAL_HOST = 'pyhost' def makemsg(message): return "1:%d:%s:%s:%d:%s" % ( random.randint(1, 1000), LOCAL_USER, LOCAL_HOST, IPMSG_SENDMSG, mes
Here are some tricks, hacks and patterns I like using most while coding Python. I will try to add more when I come across them. Basic One-Liners print [item*2 for item in [1, 2, 3]] # prints: [2, 4, 6] cond = True print 'yes' if cond else 'no' # prints: yes Dynamic Function Arguments def somefunc(self, *args, **kwargs): print 'args: %s' % args print 'kwargs: %s' % kwargs somefunc(1, 2, thirdarg=3)
Sphinx-Users.jp¶ Sphinx-Users.jp(略称#sphinxjp)は、美しいドキュメントを簡単に生成することができるドキュメンテーションツール、 Sphinx (スフィンクス)の普及を主眼としたコミュニティです。SphinxはPythonの公式ドキュメントだけでなく、このSphinx-Users.jpのサイトも含め多くのマニュアルやサイトで使用されており、詳細を Sphinxの歴史で紹介しています。 Sphinx-Users.jp は日本の Sphinx コミュニティです。 Sphinx-Users.jp では、日本で散らばっているSphinx関連情報を集めて、Webサイト、イベントを通じてSphinx情報を発信します。 slack のコミュニケーションや勉強会の開催などを通じて、ドキュメントをパワーアップしたい人、ドキュメントや翻訳で苦労している人、Sphinxの
2009年6月5日 Pythonによるデザインパターン 『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)を読みました。 私はPythonでばっかり遊んでいるのですが、PythonとRubyとは基本は同じ機能のように見えるので、Pythonによるデザインパターンに翻訳してみようと思います。 まず、デザインパターンの原則から 変わるものを変わらないものから分離する インターフェイスに対してプログラムし、実装に対して行わない 継承より集約 委譲、委譲、委譲 必要になるまで作るな(これは「Rubyによる~」の筆者による) これって、プログラミング全般に通じるものがあるようにも感じます。 Template Method Strategy Observer Composite Iterator Command Adapter Proxy 似た趣旨のブログ tachi
samurai-x is a highly modular and configurable, next generation framework window manager for X samurai-xと呼ばれるウィンドウマネージャがある。説明によれば高度にモジュール化されており、柔軟な設定が実施できる。最大の特徴はすべてPythonで開発されていることにある。動作させるには2.5以降のPythonが必要。BSD Licenseのもとで提供されている。ウィンドウマネージャの拡張が従来よりも開発しやすいと説明されている。 ウィンドウマネージャを開発するとなると、どうしてもCで開発されたライブラリにアクセスする必要があるため、自動的にCやC++を採用する傾向が強い。しかしsamurai-xではctypesを使うことでCが必要になる部分を隠蔽している。ソースコードにはまったくCのソースコー
誰もが一度使うと便利さと気軽さに感動するRubyが誇るライブラリ、 Rake 。 プログラムのビルドもそうなんですが、雑多なタスクを簡単に書けて、整理できるのがなんといっても魅力的。RailsなんかではDBの作成から何から、ばんばんRakeタスクにされていますよね。 さて、俺はPythonistasなので、PythonでRakeみたいなのがほしいわけです。ビルドに限っていえばPythonは Scons という素晴らしいツールがあります。C言語はおろか、JAVA、PDF、PostScriptなどなど、さらにはSubversionもサポートしていますし、並列コンパイルもでき、実績も多数で申し分ありません。 でも俺がしたいのは、雑多なタスクを放り込む、コレ。そういうのを簡単にやるライブラリってPythonではないんでしょうか。RubyではRakeが標準添付されるというのに。いえ、あります。前から
今日、KevinさんところにBespinの話が出ててそいつを見てて思った。 最近のpython開発環境はこんな感じだろうと。 エディター 軽量なものが好まれてるのはまあどこもみんな同じだろう。 vim emacs TextMate MacだとTextMateを使ってる人がやはり多いっぽい。 ターミナル 素。 screen必須。 必須な理由はvirtualenvでactivateするからかな。 utilityモジュール もうほぼ鉄板でpip, virtualenvを使ってるっぽい。 pip virtualenv paver Bespinの動画ではpaver軽油で色々やってる感じだった。 いろんなタスクがpythonスクリプトでざくざく書けるので流行るかも知れない。 VCS まあこれももう鉄板かも。 git mercurial その他 環境に関係ないけど傾向。 sqlalchemyは市民権を得
12月3日、Python 3.0がリリースされました。Python 3.0はPython 3000とも呼ばれており、Python 2.x系から大幅な仕様変更が加えられています。 主な(そして注意すべき)変更点は「What's New In Python 3.0」にまとめられていますが、「Python 2.xとは互換性が無い」と言われるように、かなりの仕様変更が行われています。主立ったものをまとめると、 print文が関数となり、色々と仕様も変更された。もう「print "ほげほげ",」という記法は使えない 「dict.keys()」や「dict.items()」、「dict.values()」といったDictionaryを扱ういくつかの関数の動作が変更され、リストの代わりにViewやIteratorを返すようになった 比較演算子(<、>、<=、>=)の仕様変更。明らかに不自然な比較(たとえ
サステナビリティの今と未来 企業戦略としてのサスティナビリティ推進 世界の通信インフラを支えるコルトの取組み 膨大なアクセスを支える屋台骨 高い安定性とパフォーマンスを両立 ZOZOTOWNが選んだストレージ基盤を解説 MSセキュリティ担当者が紹介 マルチクラウド環境の保護を追求する Microsoft Defender for Cloud 勝つためのクラウド活用術 New Value on Azure ビジネスを次のステージへ! ID管理の基礎知識 新しい働き方におけるITガバナンスの 向上にむけて 高い従業員満足度と安心・安全 新時代にむけた理想の業務環境こそ Anywhere Workspaceが目指す未来 新OSのWin11はどう進化したか ビジネス上の役割、開発の要因と Win11が目指した5つのポイントを紹介 現場主導のデジタル変革 ビジネス変革のための“ITの民主化” そして
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く