You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Sender Policy Framework(センダー・ポリシー・フレームワーク)とは、電子メールにおける送信ドメイン認証のひとつである。差出人のメールアドレスが他のドメイン名になりすましされていないか検出する技術である。 SPFまたはSPF認証とも呼ばれる。 インターネット上の電子メールに用いられる「SMTP」は、差出人のメールアドレスを誰でも自由に名乗ることができる。これが事実上の標準として普及したため、セキュリティ上の欠陥として表面化することになった。これにより、迷惑メール送信者、いわゆる「スパマー」による差出人アドレスの詐称が世界各地で行われ、利用者を悩ませてきた。 そのため、議論は次第に本格化し、対策のひとつとして、SPFが登場した。これは、IPアドレスの詐称は難しいという前提のもとに策定されており、原則として、DNSサーバ上に記載される情報を取得するだけで、認証を完了できる。
センドメール株式会社 (Sendmail, K.K.) 末政 延浩 2010年1月 1. SPFの背景 2. SPFの標準化 3. SPFの仕組み SPF送信側の設定 4. SPFレコードの記述法 5. SPF受信側の処理 6. SPF認証結果 7. SPFにおける課題 転送問題 第三者サーバ利用問題 8. Sender ID とSPF spf2.0とspf1 9. SPFの実装 10. SPFレコードの記述例 11. SPFレコードの間違い 有用な参照先 電子メールの送信者偽称を防ぐ送信ドメイン認証技術には、ここで説明する「Sender Policy Framework(SPF)」のほかに、「DomainKeys Identified Mail(DKIM)」、「Sender ID」など様々な方式が標準化されている。その中でもSPFは、他の方式に比べて既存システムに影響を与えず早期に導入で
Go1.8beta1が出た時に、Go1.8で追加される予定のGraceful Shutdownについて書く! とTwitterに書き込んで早1ヶ月。 この前の金曜日にGo1.8rc2がリリースされ、正式リリースも間近になってきて、 さすがに書かねばという気持ちになって来たので、がんばって検証してみます。 公式サポートで増える予定の機能 以前Go言語でGraceful Restartをするときに取りこぼしを少なくするで 紹介したようにshogo82148/go-gracedownというものを書きました。 あれから時は経ち、ついにGo1.8からはGraceful Shudownがbuild-inの機能として提供される予定です。 公式サポートが入ることによって、以下のような機能を使えるようになります。 HTTP/2のGraceful Shutdownができる HTTP/2ではGOAWAYフレーム
社内の某合宿イベントで、Go製の軽量WAF Echo を使ったAPIサーバーを作ろうとしていて、夏休み中にデーモン化とデプロイの仕組みを作ってみたので、ちょっとまとまりきってないですが忘れないうちにメモしておきます。 慣れない事が多くて試行錯誤しながら丸一日使ってめっちゃ疲れたけど勉強になった。hot deploy の仕組みが大変興味深いです。(参考記事) 試行錯誤した結果、利用するツール・ライブラリは下記になりました。 デーモン化 supervisord デプロイ (githubに push したら アプリケーションサーバーが webhook 通知を受信してビルド・graceful restart する) facebookgo/grace mattn/gost (デプロイの図) 試行錯誤 試行錯誤や調査の結果、利用を見送ったもの。 daemontools (プロセス管理) インストールが
1. Getting Started 1.1 About Version Control 1.2 A Short History of Git 1.3 What is Git? 1.4 The Command Line 1.5 Installing Git 1.6 First-Time Git Setup 1.7 Getting Help 1.8 Summary 2. Git Basics 2.1 Getting a Git Repository 2.2 Recording Changes to the Repository 2.3 Viewing the Commit History 2.4 Undoing Things 2.5 Working with Remotes 2.6 Tagging 2.7 Git Aliases 2.8 Summary 3. Git Branching 3.
Goで書いたツールのバイナリ配布ってどうやれば良いのかなーと思っていたら、goreleaser というツールを見つけたので使ってみた。非常に便利だったのでメモしておく。 goreleaserとは 簡単に言うと、Goのバイナリのクロスコンパイルと、Github Releasesへのデプロイをやってくれる君。詳しくは https://goreleaser.com/ と https://github.com/goreleaser/goreleaser を参照。 goreleaserのインストール https://github.com/goreleaser/goreleaser/releases からバイナリを取ってくるでも良いけど、僕はgo getでインストールした。 $ go get github.com/goreleaser/goreleaser goreleaserの設定を行う まずはリリ
最近、後進の育成について考える機会があります。 ある時、こんな状況で困ることがあるんだけど、どう思う? と聞かれて飛び出した言葉【反抗期】について考えてみます。 相談内容 育成や生産効率をテーマにした会食にて、相談された内容は あるエンジニアが実力以上に過信して自己評価する やたら特定の技術に拘って、結局リリースが伸びたり改悪したりする ・・・んだけど、これは何なんだろう、どうしたらいい?というもの。 これに対し、自身の辿った道も思い直して出した返答が 『それは、エンジニアの反抗期だよ』 もちろんこれは、こどもがヤダヤダ拒否する(=仕事したくない)本来の意味ではなく 逆に、やり過ぎによる失敗経路への舵切りのことを指しています。 聞き手はこれで非常に納得がいった様子。 反抗期とは おそらく3~5年目の時期に、技術やアイデアに偏ったものを創り出すことがあります。 そして、閑古鳥/改悪サービスに
1. これからはじめる インフラエンジニア 2012/12/17 知的ヘンタイ六番勝負 第三戦 外道父@GedowFather Copyright © DRECOM Co., Ltd All Rights Reserved. 1 2. わ言そ 興 イ な かわん 味 ン に っれな が フ ? とんこ な ラ るでと い に わも ! ? な ん て Copyright © DRECOM Co., Ltd All Rights Reserved. 2
ガチのAWSド素人が年末に調べまくった、AWS関連のリンク集です。 まだまだ調査中なので随時追加する予定ですが、広深くてキリがないのと、年始一発目の目覚ましエントリということでいってしまいます! はじめた目的 多数のスタートアップにおいて、インフラ専門のエンジニアが付かなくても、小~中規模程度まではそのチームでインフラ面を完結できるようにしたい。 …ということで、今の時代に合わせて簡単・安価・拡張性・耐障害性…を満たす環境を考えるべく、ひたすら知識をかき集めることにしました。考えた構成などについては別途書きたいと思います。 また、遡って調べるほどに出来と進化速度に感心するとともに、情報消費期限がせいぜい2年だと感じ、ほぼ2年以内の情報をもってこのような臭ぇタイトルにしています。 目次 ドキュメント アーキテクチャ クラウド全般比較 クラウド性能比較 費用/スペック ネットワーク 基本インス
お久しぶりでございます。諸事情によって半年近くも息を潜めていましたが、また継続的なアウトプットをしていきたいと思います。あうとぷっとあうとぷっと。 昨年からAWSに触り始めて、少しずつ研究して、今年から本番運用を開始できています。なので、そっち方面が多くなりそうなのですが、その一発目として昨年にAWSを軸に新卒インフラエンジニアを育成してみた話を書いてみます。 経緯 ウチでは一般的な新卒採用を行っています。内定が出て、入社後はエンジニアも一定期間の研修を受けて、そして配属されることになっています。 私は稀に、キャリアプランによっては内定した段階の子との面談を組まされるのですが、その時点でインフラエンジニアになるという断固たる決意を持っていて、研修の段階に入っても意志は変わらなかった野郎がいたのでインフラ部隊に入れることにしました。しましたといっても普通は、配属は本人の希望以外に人事部判断や
はてなチーフエンジニアの id:motemen です。2016年4月1日付けで、新卒・中途含めて6人の新人エンジニアがはてなに入社してくれました。この記事では、彼らに受けてもらった今回の新人研修についての概要を簡単に紹介します。 動機 もともと、はてなのアプリケーションエンジニア向け研修には、GitHubでも公開されているはてなサマーインターンの講義資料を利用してきていました。資料そのものは自信をもってオススメできるものですが、学生向けということもあり基礎的な内容が多く、実際の業務で必要な知識とはギャップがあると感じるエンジニアも多かったようでした。社内でアンケートを取ってみたところ、インフラ一般やはてな社内のサーバ構成の知識を不安に思う声が特に多く聞かれました。 そこで今回は新たな取り組みとして、インターン向けの基礎的な資料に加えてエンジニアとしての実務にフォーカスした講義内容を追加し、
SRE (Site Reliability Engineer) 職(中途)開発速度と信頼性はトレードオフであり、バランスを取っていく必要があります。SRE の役割は、サービス特性、開発フェーズ、利用ユーザーの体験などを考慮しつつ、Product Owner とともに SLO を定義し、ソフトウェアエンジニアリングとシステムエンジニアリングとソフトスキルを駆使して信頼性を計測、コントロールすることです。 id:cohalzSRE2018年入社信頼性を制御し「サービス開発」を加速させるサービス開発チームにジョインして開発/運用していく Embedded SRE は運用業務だけでなく、SREの原則に基づいたSLOの策定およびその先の開発速度を最大化するためにリーダーシップを発揮していくことが重要な仕事です。 自身のソフトウェアエンジニアリングとシステムエンジニアリングとソフトスキルを組み合わせつ
Hatena-Textbook はてな教科書は、はてなのエンジニアとして最低限必要とされる技術を身につけるための教科書です。 Web開発における重要なトピックを順番に学びながら、課題をといていくことで、Webアプリケーションをひととおり構築できるようになります。 実装言語としてPerlとScalaのどちらを選ぶことができます。 トピックごとに学びたい言語の方の教科書を読み進めてください。 目次 プログラミングの基礎 Perlによるプログラミングの基礎 Scalaによるプログラミングの基礎 データベースの基礎 Perlによるデータベースプログラミング Scalaによるデータベースプログラミング Web開発の基礎 PerlによるWebアプリケーション開発 ScalaによるWebアプリケーション開発 Webフロントエンド開発 はてな教科書JavaScript編 hatena/Hatena-Tex
Pelletkachels waren ooit eenvoudige apparaten voor verwarming, maar ze hebben een opmerkelijke evolutie doorgemaakt sinds hun bescheiden begin in de jaren ’80 van de vorige eeuw. In dit artikel duiken we diep in de geschiedenis van pelletkachel, bespreken we de belangrijkste mijlpalen en ontwikkelingen op het gebied van subsidiemogelijkheden en werpen we een blik op de transformatie tot moderne en
とあるHTTPサーバをGolangで立てようって話になったんだけど、 止まると困るので無停止でサーバ再起動をしたい。 PerlにはServer::Starterという有名モジュールがあるんだけど、 Golangはどうなってるの?ってことで調べてみました。 2017-01-22追記: Go1.8以降でGraceful Shutdownがbuild-inになるので、この記事で紹介したライブラリは不要となりました。 詳しくはGo1.8のGraceful Shutdownとgo-gracedownの対応を参照。 gracefulじゃないバージョン Golangの標準ライブラリを使ってHTTPサーバを立ててみる例。 レスポンスが一瞬で終わってしまうとよくわからないので、sleepするhandlerを追加しておきます。 package main import ( "fmt" "log" "net/ht
HTML/CSS 394 CSS仕様 123 CSS設計 55 HTML仕様 42 SVG 25 スタイルガイド 14 HTML/CSSの実践 138 HTML/CSSドリル 4 フォント 3 データ形式 6 性能と品質 52 セキュリティ 16 パフォーマンス 12 アクセシビリティ 23 ブラウザ 23 デザイン 70 コミュニケーション 10 ディレクション 51 ドキュメンテーション 7 JavaScript 468 ECMAScript 45 ライブラリ 68 ブラウザAPI 38 WebGL 42 テスト 36 JavaScriptの実践 64 JavaScriptの設計 9 JavaScriptドリル 19 非同期通信 5 DOM 9 Angular 30 Electron 4 Web Components 17 jQuery 24 Backbone 17 TypeScrip
Google Developer Group 神戸: Googleのテクノロジーを活用したり、 勉強会をしたりする活動をしています。 こんにちは。scarvizです。 今回は前回作成したWebサーバアプリをサービス化してみようと思います。 今回もGo開発マシン(Ubuntu12.04)を使います。 Linuxでサービス化をするには、バックグラウンドプロセスで動作するようにdaemonを作成する必要があります。 基本的な流れは、C言語で作成するLinuxのdaemonと同じです。 下記の#4を参考にしました。 https://code.google.com/p/go/issues/detail?id=227 ■daemon関数の作成 daemon関数は以下のように作成しました。 /* daemon関数 */ func daemon(nochdir, noclose int) int { va
今回は、ローチャート、UML、システム構成図、などなどなど、 エンジニアがよく使いそうな図を書くためのツールを紹介したいと思います。 無料でMac/Windowsの両OSで使えるという条件でチョイスしてみました。 (あ、タイトルには「エンジニアのための」と書きましたが、今回紹介するのは別にエンジニア専用のツールではないです(念の為)) 汎用的 とりあえず、色々な図が書けそうなツール Cacoo 【URL】 https://cacoo.com 【特徴】 無料版では25シートまで 無料版での書き出しはPNGのみ だいたい何でも書ける 複数人でチャットしながら1つの図を作成出来る 【メモ】 特に有料版は高機能だと思う 会社で有料アカウントに入っているのであれば、このツールを使う選択肢で良いと思う draw.io 【URL】 https://www.draw.io/ 【特徴】 とりあえず会員登録し
グリッドロー株式会社(栃木県宇都宮市、代表取締役 石田祐介)は、 斬新な操作性と軽量動作のUML描画ツール Gridraw(グリッドロー)を 2016年6月13日 に正式リリースしました。Windowsに対応したPCソフトで、弊社Webサイト ( https://gridraw.com/ ) からダウンロード可能です。 料金は月額300円から。非商用利用の場合は全機能無料で利用できます。 「ソフトウェア設計は面倒だ」 と感じているエンジニアは意外に多く存在しています。 特に最近はアジャイル開発に代表される「動作する成果物第一主義」がそれを後押ししています。しかし、そのような環境であっても、設計が重要な要素であることは変わりません。 Gridraw はそんなエンジニアに対して快適な操作性を提供。 「設計=面倒」というイメージを払拭し、設計の質と速度を向上させます。その結果、機敏な開発が求めら
この記事はTMI総合法律事務所所属の弁護士3名(波多江氏、竹内氏、小川氏)が運営するサイト BizLawInfo.JP の記事を加筆修正の上、転載したものです。波多江氏、竹内氏、小川氏の3名は、日本とシリコンバレーに分かれ、コーポレート、投資、M&A、個人情報、知財等、幅広い分野で先端の法律実務に従事しています。BizLawInfo.JP では、日本とシリコンバレーのStartupの実務や日本企業の海外進出を取り巻く環境に関する法律問題などについて、積極的に情報を発信しています。 シリコンバレーでは、毎日のように「あのスタートアップはシリーズAで○ドル入ったらしい」とか「あのスタートアップはまだシードラウンドでエンジェルを探している」というような話を聞きます。シリーズなんちゃら、という言葉や「シード」とか「ラウンド」とか、起業された方にとっては当たり前の言葉ですが、その正確な意味はどんなも
有限会社テクノロジックアートを設立 OSF(Open Software Foundation)のテクニカルコンサルタントとしてOSF日本ベンダ協議会DCE技術検討委員会の主査 DCE関連のオープンシステム推進を行う 株式会社テクノロジックアート代表取締役 UMLによるオブジェクト指向セミナーの講師、UML関連のコンサルテーションを行う OMGでUML Profile for EDOCの共同提案者 ISO/IECJTC1 SC32/WG2委員 明星大学情報学部講師 特定非営利活動法人UMLモデリング推進協議会 発起人 著書/訳書 「XPエクストリーム・プログラミング入門」 監訳、(株)ピアソンエデュケーション、2000年 「アジャイルソフトウエア開発」 監訳、(株)ピアソンエデュケーション、2002年 「アジャイルプロジェクト管理」 監訳、(株)ピアソンエデュケーション、2002年 「エンタ
ヴィントン・グレイ・サーフ(Vinton Gray Cerf[1], 1943年6月23日 - )は、アメリカ合衆国の計算機科学者であり、ロバート・カーンと共に[4][5]インターネットとTCP/IPプロトコルの創生に重要な役割を演じた「インターネットの父」の1人[6][7]。その功績により、アメリカ国家技術賞[1]、チューリング賞[8]、大統領自由勲章[9]を受章し、全米技術アカデミー会員にも選ばれている。通称はヴィント・サーフ(Vint Cerf)。 かつてアメリカ国防総省国防高等研究計画局(DARPA)でプログラムマネージャを務め、TCP/IP関連技術を開発する様々なグループに出資した。1980年代末ごろインターネットが商用化される際、MCIに移って初期の商用電子メールシステムMCI Mailを開発し、それをインターネットに接続した。 ICANNの創設に尽力。後にICANNの理事とな
概要 モジュール(module)とは、機能単位、交換可能な構成部分などを意味する英単語。機器やシステムの一部を構成するひとまとまりの機能を持った部品で、システム中核部や他の部品への接合部(インターフェース)の仕様が明確に定義され、容易に追加や交換ができるようなもののことを指す。 人工物の構成要素や部品のうち、内部がより単純な複数の要素で構成され、それ自体がある程度まとまった何らかの意味のある機能を有するようなものを指す。他の構成要素と繋いだり、組み合わせて使用するための規約や仕様が、要素自体の仕様とは別に独立して定義されている点も重要である。 このような構成単位を組み合わせて全体を構成する手法を「モジュラー型」設計という。モジュール単位で容易に交換でき、モジュール内部の設計や実装の詳細を他のモジュールや全体の設計者が知る必要がない(ブラックボックス化)ため、要素ごとの分業や専門化が可能とな
概要 コンポーネント(component)とは、部品、成分、構成要素などの意味を持つ英単語。ITの分野では機器やソフトウェア、システムの構成する部品や要素などのことを意味する。 ソフトウェア開発の分野では、特定の機能を持ち単体で完結しているが、単体では使用せず(できず)、他のプログラムから呼び出されたり連結されたりして使用されるプログラム部品のことをソフトウェアコンポーネントという。 特に、ある特定のシステムの一部を構成するのみに留まらず、将来単体で提供されて他のソフトウェアに組み入れられたり、他の開発プロジェクトで再利用されることを意図し、汎用性や独立性を高めた仕様や設計を持つものを指してコンポーネントと呼ぶことが多い。 また、ソフトウェア開発の中でも、GUIアプリケーションやWebシステムの場合には、実行時の操作画面を構成する個々の操作要素(ボタンやテキストボックスなど)のことや、それ
ソフトウェア設計には、パターン理解が大切。 でも、その前に、設計の基本原則(設計の基本テクニック)を、押さえておきたい。 いろいろな設計パターンに共通する、その根っこにある設計原則を会得すれば、パターンの理解や実践が、もっと楽に楽しくなる。 設計原則の会得は、ソフトウェア設計の免許皆伝、達人への道であり、ここぞという時の、銀の弾丸になる。 モジュール化 たぶん、これが、いちばん基本の設計原則。 デザインパターンも、アナリシスパターンも、アーキテクチャパターンも、モジュール化原則の適用例になっていると思う。 モジュール化の原則違反の典型例は、一枚岩(モノシリック)で巨大なソフトウェア。 別名、密結合、スパゲティコード。 こういうソフトウェアは、理解しがたく、変更が恐ろしく難しい。 バグがあちこちに隠れていて、副作用が怖く、とてもじゃないが、コードを変更する勇気(度胸?)はない。 「一枚岩」は
オブジェクト指向設計の目的は、開発効率をあげ、保守しやすい変更が容易なソフトウェアを作ること。そのために、「クラス」(オブジェクトの型)を基本単位にした「モジュール化」を行い、そのモジュールの再利用性を高める設計を目指す。 ドメイン駆動設計の文脈から、オブジェクト指向が狙った「再利用」の現状を考えてみる。 プレゼンテーション層とデータソース層では「フレームワーク」を使うことで、オブジェクト指向による「部品の再利用」のありがたさを日々実感している。 実行基盤として Spring Boot, プレゼンテーション層の Spring MVC と Thymeleaf、データソース層の MyBatis を使うことで、開発期間を短縮でき、実績のあるフレームワークなので、安定した品質も確保できている。オブジェクト指向が狙った「再利用」が実現されている。 しかし、ドメイン層は、毎回、独自に部品を開発している
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く