タグ

2022年12月5日のブックマーク (7件)

  • Dockerfile ベストプラクティス/2022夏 - Qiita

    今までなんとなくで済ませてきたDockerfileの設定ですが、あらためて公式のベストプラクティス1や公式のリファレンス2を読み解いていきたいと思います。 Dockerfileの各命令の意味や、キャッシュを有効活用するための注意点などについて触れていきます。 ※ベストプラクティスにある「stdinからdocker buildする方法」に関する項目は省略しました。 Dockerfileとは? Dockerイメージを作る際の指示が書かれたファイルです。 Dockerfileを元にイメージが作られ、このイメージを元にコンテナが作られます。 だからすでにイメージがある場合はDockerfileは不要なんですね。 Dockerfileを作る時の注意点 では、早速Dockerfileを作りましょう。 各命令の意味を調べていく前に、Dockerfileを作成するにあたって気を付けた方が良い点について整理

    Dockerfile ベストプラクティス/2022夏 - Qiita
    motchang
    motchang 2022/12/05
    “しろ、レイヤーを減らそうとするとキャッシュ効率が下がるのでよくないです。また、中間でエラーがあったときのデバッグ時間も伸びるしデメリットの方が今は大きいです。” あ〜
  • Rustのメモリ管理って面白い - Qiita

    はじめに Rustという言語に初めて触れてみて、これのメモリ管理戦略って面白いなと思ったのでちょっと書いてみます。まだ真剣に見始めて実質1日くらいなので大いに勘違している可能性もありますが、自分の理解のためにもまとめてみます。 なお、言語の成り立ちとか特徴とかはググると色々出てくると思いますが、個人的に乱暴にまとめてしまうと Mozillaが支援していて、FirefoxのレンダリングエンジンServoの開発に使われている C/C++が得意としていたシステムプログラミングに使える 性能と安全性のバランスを取っている Go言語と何かと比較されている といったところかなと思います。 なお、Rust関連情報のリンク集として、@moshgさんのこの記事もとても役にたちました。ありがとうございます。 興味を持ったきっかけ Rustという言語自体は知っていましたが、最初に聞いたときは「また新しい言語が出

    Rustのメモリ管理って面白い - Qiita
  • Rustのメモリ管理機能とその特徴

    初出:技術評論社刊「ソフトウェアデザイン 2021年9月号」 先日、技術評論社よりRustのメモリ管理機能についての特集に寄稿させて頂きました。 この記事は自分が寄稿させていただいた記事をブログ用に一部推敲・加筆を加えたものです。 なお、ソフトウェアデザインでの特集ではより実践的な例でのメモリ管理についての解説もあるので、興味のある方は誌のほうも手にとっていただければと思います。 プログラム言語におけるメモリ管理の課題プログラミングにおける課題の一つとしてどうやってメモリ領域(ヒープ領域)を管理するかというものがあります。 C言語ではmalloc/free関数などを用いて手動でメモリを管理しています。 これらの関数はメモリアドレスを示すポインタを介してメモリ管理を行います。 malloc関数は必要なメモリ領域を確保してその先頭番地のポインタを返し、プログラム内ではその番地のメモリを読み書

  • なぜRustなの?と言われた時のために

    20 秒で概要 当記事では、Rust における以下の 4 つのいいところを特徴を紹介します。 他の言語と比較しながらコンセプトを学ぶことで、なぜ今 Rust を学ぶべきかを理解できます。 Rust はメモリ安全な言語です Rust はリッチな型システムがあります Rust はエラー処理が分かりやすい Rust は健全なコミュニティの有るエコシステムです また以下のような、Rust 学習における最初の一歩のお手伝いもします。 環境のセットアップ 写経に適したチュートリアルの紹介 躓きポイントの紹介 Rust のいいところ Rust はメモリ安全な言語です。 これまでのメモリ管理手法 プログラミング言語によるメモリ管理には、これまで 2 種類の方法が有りました。 プログラマが全責任をもって管理する 例)C 言語 char *str; int length = 100; // 100byte(半

    なぜRustなの?と言われた時のために
  • はじめに

    Rust 高度で危険な Rust Programming のための闇の技法 NOTE: この文書はドラフトです。重大な間違いを含んでいるかもしれません。 私に与えられたのは、望んだようなプログラムではなく、身を震わせるような暗黒と言い表せないような孤独であった。そして私はついに、誰ひとり口にしようともしなかった恐ろしい真実、ささやくことすらできない神秘中の神秘を目にしたのだ。石のように硬く、耳障りな音をたてるこの言語は、ロンドンが古きロンドンではなく、パリが古きパリではないように、Rust の御代をとこしえにするものではなく、実はきわめて危険で、不完全に防腐処理された、だらしなく寝そべった死体だったのだ。そこにはコンパイル時に生まれた奇妙な生き物たちが所在なさげに蔓延っていた。 (訳注: H.P. ラヴクラフトの小説「あの男」のパロディのようです。) このは、危険な Rust プロ

  • Dockerを使ってElixirの分散システムを気軽に楽しむ - Qiita

    分散Erlangシステムを楽しむには複数のPCがあるといいのですが、それだと準備が大変で敷居を高く感じるかもしれません。 Dockerを使えば一つのPC上に複数の仮想ホストを簡単に立ち上げられます。それらを別々のPCに見立てれば、気軽に遊べるのではないでしょうか。 やりたいこと Dockerで仮想Linuxマシンを三つ起動してそれらを別々のPCと見立てる それぞれの仮想Linuxマシンでノードを起動する すべてのノードを接続 後は自由に遊ぶ ノードとは 分散Erlangのドキュメントによると A distributed Erlang system consists of a number of Erlang runtime systems communicating with each other. Each such runtime system is called a node. 分散

    Dockerを使ってElixirの分散システムを気軽に楽しむ - Qiita
  • 『ELDEN RING』にてプレイヤーを飽きさせないためにフロム・ソフトウェアが実践した「オープンフィールドおもてなし術」とは?【CEDEC+KYUSHU 2022】

    11月12日、九州産業大学にてゲーム開発者向けカンファレンス「CEDEC+KYUSHU 2022」が開催されました。 今回はフロム・ソフトウェアの福岡スタジオに所属する宮内淳氏と森田鉄平氏が登壇した講演、「狭間の地へようこそ!『ELDEN RING』におけるオープンフィールドおもてなし術」についてのレポートをお送りします。 『ELDEN RING』の開発に携わった宮内氏と森田氏が「オープンフィールドを実現した今作がプレイヤーを楽しませるために行った工夫」や「キャラクターのモーションのこだわり」について語るセッションとなっています。 文/ジスマロック 編集/実存

    『ELDEN RING』にてプレイヤーを飽きさせないためにフロム・ソフトウェアが実践した「オープンフィールドおもてなし術」とは?【CEDEC+KYUSHU 2022】