投稿

ラベル(Language)が付いた投稿を表示しています

メールサーバの移行

イメージ
 自前のメールサーバを停止 これまで、自ドメインのメールサーバはVPS上に構築していた。 ・Ubuntu Server ・Postfix ・Dovecot ・spamAssassinと、BlackListの利用 Spam対策を行ってきたし、サーバ上でメールをトリガーにして各種プログラムを動かしたりしてきた。 メールサーバのメンテナンスは結構面倒くさくて、  ・Disk容量のチェック  ・不正アクセスのチェック  ・各種セキュリティパッチの適用 など、手間がかかる。 そこで、外部のサーバを利用することに…。 結構安くて使い勝手の良さそうなのが、「さくらのメールボックス」 3年契約で、3070円とな…。  メールアドレスは自分のだけなので、20GBまで利用可能!  (Gmailより大きいねぇ) ということで、早速契約。 アカウント設定を行って、既存のDNSを書き換える。WHOISも書き換えて完了。 SMTPとIMAPが利用できればOK。 ちょうど、GoogleがSPF設定していないと受信しないし、DKIMおよびDMARCに対応していないメールを弾くようになったので、対応しているのを確認。 さくらサーバ自体は、これまでお客さんのサーバとして何件も利用しているので、利用方法も難しくはない。  Webメールにも対応しているので、いざという場合にもありがたい。 ということで、各メールソフトの設定を変更。  PC(常時使用する3台)とタブレット、スマートフォンと台数は多いがそれ程手間はかからない。 問題は、旧サーバで送受信したメールの履歴だけれど、これはThunderbrdを使ってローカルに保存することで回避。  本当は、サーバtoサーバでMailboxに残そうとも考えたんだけど、古いメールはそれ程必要ないし、ローカルにバックアップしてあれば凌げるので、良しとする。 移行時にDNSの反映で若干時間がかかったものの、問題なく送受信できるのを確認して、作業完了。  これでメンテナンスの手間が減るので、安いもんです。

JuliaLangを習得

イメージ
Julia言語って?  少し前から気になっていたので、少しずつマスターすることに。 MITで2010年少し前に発表されていて、2012年に公開。 まだ、若い言語ですね…。 で、どんな言語かと言うと動的型付け言語で、Pythonにすごく似ているので、知っていれば学習が楽。 JITで実行直前にコンパイルするため、初回はコンパイル分だけ遅めだけど、実行速度はC言語なみ。 しかも、Pythonのライブラリや、Cのライブラリを簡単に呼び出して使えるという変態ぶり。 MATLABやoctaveなんかと同様なベクトルや行列などが利用できるので、覚え直さなくていい。 数学処理や実験系の人は、楽なんじゃね?と思うわけです…。 高校の数学なんかも、こういったソフト使用すれば良いのになぁ。 本家は、 https://julialang.org 基本のインストールは、ダウンロード&展開して終了なので、超簡単。 PATHの通っているディレクトリにリンクを生成して完了。 $ ln -s /opt/julia-1.5.3/bin/julia ~/bin/ 基本的には、CUIで使用するけれど、Jupyter Notebookでも使える。 vscodeに拡張機能入れれば、vscode上でも実行できるというのが素敵。 起動すると、こんな派手なREPLという対話型環境が利用できるようになっている。 一応、本も探してみたけれ、知名度がまだ低いせいか、多くは出版されていない。 以下の本は、Pythonくらい知らないと、やや理解が難しいかもしれない。 網羅的に紹介されているけれど、詳細は本家サイトを参照というのが多め。 でも、はじめてJuliaを触る人には指針となるかな。 まあ、Julia自体、Helpも結構親切なので、なんとかなる。 例えば、パッケージPlotsを使おうとした例 julia> using Plots ERROR: ArgumentError: Package Plots not found in current path: - Run `import Pkg; Pkg.add("Plots")` to install the Plots package. などと表示してくれる。 そこで、 julia> import Pkg julia> Pkg.