タグ

castaneaiのブックマーク (5,760)

  • 【C#】マルチスレッド関連操作の詳説。 - ねののお庭。

    この記事は Qiita C# Advent Calendar 2021 23日目の記事です。 マルチスレッドプログラミングにおける問題。 原子性 コンパイラによる命令の並び替え メモリバリアについて acquire / release acquire / releaseの取り扱いづらさ sequential consistency C#でのマルチスレッド関連操作 lock (statement) volatile (keyword) Volatile (class) Interlocked (class) Common Language Infrastructure (CLI)における volatile read/write の仕様 まとめ References この記事のお話の流れは、①マルチスレッドプログラミングで発生する問題、②それらの問題に対処するためのメモリバイアについて、③それ

    【C#】マルチスレッド関連操作の詳説。 - ねののお庭。
    castaneai
    castaneai 2021/12/23
  • gRPCのkeepaliveで気をつけること その2 - Carpe Diem

    背景 以前gRPCのkeepaliveについて説明しました。 christina04.hatenablog.com keepaliveの目的は idleコネクションを維持するため 死んだコネクション(TCPハーフオープン)があったら切断し、再接続するため と書きましたが、どちらの検証もアクティブなRPCがなくなってからのkeepaliveの例であり、リクエストが続く中での挙動は検証できてなかったので今回はそれを行います。 環境 grpc-go v1.38.1 Ubuntu 18.04 (Linux Kernel 4.15.0-147-generic) PINGフレームはいつ送信される? Client-side keepaliveのパラメータであるTimeで送信間隔は設定できますが、いつ条件を満たして発火する(タイマーが開始する)かについては説明していませんでした。 Proposalでは i

    gRPCのkeepaliveで気をつけること その2 - Carpe Diem
  • Google TestのASSERT_EQとEXPECT_EQの違い | NO MORE! 車輪の再発明

    普段C++のユニットテストはGoogle Testを使って書くことが多いのですが、ちょっと時間が空くと諸々仕様忘れて同じこと何回も調べなおしてる気がするので、自分がちょいちょいハマる仕様を順次残していこうかと思います。 ASSERT_*とEXPECT_*の違い Google Testでは2つの値を比較する方法に、ASSERT_*を使う方法とEXPECT_*を使う方法の2種類あります。この2つの違いをまとめていきます。 ASSERT_* ASSERT_*は比較結果が意図しないものの場合、そのテストはそこで強制終了してしまいます。 文章で説明するより、コメント付きのコードを示した方がわかりやすいので、以下にサンプルコードを貼っておきます。 #include <gtest/gtest.h> TEST(SampleTest, assertTest) { // ASSERT_*はこけたらそこで強制終

    Google TestのASSERT_EQとEXPECT_EQの違い | NO MORE! 車輪の再発明
    castaneai
    castaneai 2021/12/23
  • スライド 1

    ed25519のすすめ Kazunori Fujiwara, JPRS fujiwara@jprs.co.jp 2018/6/27 まとめとURLなど • ED25519は3072ビットRSAと同程度の暗号強度であるにもかか わらず、公開鍵・署名サイズが非常に小さいため、DNSSECのパ ケットサイズ問題を改善できる。(フラグメントなし運用しやすい) • ED25519の実装が進んできているので、みんなで遊びましょう。 • 関連資料など – https://ed25519.cr.yp.to – https://www.openssl.org – https://www.isc.org/git/ – https://git.nlnetlabs.nl/ldns/ – https://www.unbound.net/ Copyright © 2018 Japan Registry Service

    castaneai
    castaneai 2021/12/22
    "ED25519は3072ビットRSAと同程度の暗号強度であるにもかかわらず、公開鍵・署名サイズが非常に小さい"
  • Go製アプリケーションのコンテナ化にはkoを推したい - YAMAGUCHI::weblog

    はじめに こんにちは、Google Cloudでオブザーバビリティを担当しているものです。Cloud Operations suiteをよろしくおねがいします。(宣伝終わり) この記事はGo Advent Calendar 2021 その1の22日目の記事です。昨日は @sago35tk さんの「ESP32 向けに TinyGo をセットアップする」でした。TinyGoのコアな情報を日語で教えてくれるtakasagoさんには当にいつも感謝しています。 さて、今日はGo製のアプリケーションをdockerlessでコンテナ化できるkoの紹介をします。koは当にイチオシのツールで、みんなに使ってもらいたいのでぜひ使ってください。 github.com DockerによるGo製アプリのコンテナ化 まず最もポピュラーと思われるDockerを用いた場合のGo製アプリケーションのコンテナ化の方法に

    Go製アプリケーションのコンテナ化にはkoを推したい - YAMAGUCHI::weblog
    castaneai
    castaneai 2021/12/22
    お仕事で使ってます、便利!
  • 35歳から見た働くという景色。生き方を考える歳について - WETな備忘録

    「そういうのは20代に置いてくるものだろう」と、そいつは言った。 そいつは、高校のときからの親友で、とは言っても高校のときはロクに会話もしなかったが、高校を出てからなんとなく長く付き合っている。そいつは、出版社に勤めたりして、プライベートではアマチュアだがCDを出すぐらい音楽をやっていて、僕もときどきライブを見に行ったりする。僕のくだらない、いつまでたっても幼い話に、いつでも独自の視点から付き合ってくれる、大切にしたい友人の一人である。 お互い35歳になり、久しぶりに会って酒飲みながら話をするともなると、奮発してお寿司なんてっちゃったりするのだが、放課後のガストで4時間も5時間もおかわり自由のカップスープと甘酸っぱい恋話で粘っていた俺たちが、気づけば遠くへ来たもんだと思う。あの頃の俺たちは、鍋の中のワカメをどれだけ多く掬うかに、情熱と空腹をかけていた。 労働と給料 自分を如何に高値で売る

    35歳から見た働くという景色。生き方を考える歳について - WETな備忘録
    castaneai
    castaneai 2021/12/22
  • Cloud SpannerとCloud Pub/Subとで実装するTransactional outboxパターン | メルカリエンジニアリング

    Credit Designチームでバックエンドエンジニアをしている@iwataです。主にメルペイスマート払い関連の開発をしています。 Merpay Advent Calendar 2021 の21日目の記事をお届けします。 メルペイスマート払いの開発においてもご多分に漏れず、マイクロサービスアーキテクチャを採用しています。マイクロサービス開発において避けては通れない問題として、分散トランザクションによるデータ整合性の担保があります。メルペイスマート払いマイクロサービスでは一部APIにおいて整合性担保のために、Transactional outboxパターンを用いた実装をしています。 記事ではテーブル設計を含めたその実装の詳細を紹介したいと思います。 tl;dr Transactional outboxパターンを使ったSpanner, Pub/Sub間での整合性担保 Spannerならでは

    Cloud SpannerとCloud Pub/Subとで実装するTransactional outboxパターン | メルカリエンジニアリング
    castaneai
    castaneai 2021/12/21
    “Statement hintsのLOCK_SCANNED_RANGES=exclusiveを使うことで排他ロックの取得を試みる”
  • KeepingYouAwake for macOS

  • がくえんゆーとぴあ まなびストレート! 第一話|バンダイチャンネル

    2035年。価値観が多様化し、高校へ行く事が当たり前ではなくなった時代。年々進む少子化のせいで廃校に追い込まれる学校も少なくなく、光香の通う“私立聖桜学園”もその危機に立たされていた。そんな学校に一人の転校生が現れる。天宮学美。通称・まなび。「まっすぐGO!」が座右の銘の彼女は、なんと転校初日に生徒会長に立候補して……!?

    がくえんゆーとぴあ まなびストレート! 第一話|バンダイチャンネル
    castaneai
    castaneai 2021/12/19
  • 自宅警備員ごっこで見つけるハッカーの痕跡 - Fox on Security

    日は、あまり興味を惹く参考記事がなかったので、某サイトをネットサーフィンした件を書きたいと思います。 日、作業cy・・勤務時間外に見ていたのは、このブログでも過去に何度か記事を書いた事がある、世界の監視カメラ映像を見れる某サイトです。 日でも、サイト管理者集計ですが、日時点で1,519台のカメラが掲載されており、オリンピック前に総務省が肝煎りで実施した、サイバー攻撃に悪用されるおそれのあるIoT機器の調査(NOTICE)の結果を嘲笑う様な掲載数を誇ります。 ※このほとんどが監視カメラのパスワード設定なし、又は脆弱なパスワード設定によるものとサイト管理者は公言しています。 URLリンクを貼るのは自己規制しますが、ググればすぐ出てくるサイト(ロシア系だったと思います)なので、業務をサボりたい休憩時間を有効に使いたい方は、たまに見てみると良いかと思います。 久しぶりに閲覧したのですが、ち

    自宅警備員ごっこで見つけるハッカーの痕跡 - Fox on Security
    castaneai
    castaneai 2021/12/19
  • Rob Pike's 5 Rules of Programming

    castaneai
    castaneai 2021/12/19
  • Goのロギングライブラリ 2021年冬 - moriyoshiの日記

    この記事はPySpa Advent Calendar 2021の14日目のエントリーとして書かれました。昨日のエントリーは冷凍品でウキウキ引きこもり生活 でした。ちなみに私も70ℓの冷凍庫を購入しましたが当にライフチェンジングでした。 総論: なぜログが必要か 可観測性 たとえ目的は自明でも、その動作までが自明なアプリケーションというものはほぼ存在しません。現実の世界のアプリケーションというものは、動作パラメータだったり実行環境だったり、起動時点でのさまざまな要因によって挙動を変えるものだからです。そして、そうしたアプリケーションにはライフサイクルというものがあります。ここでいうライフサイクルは、アプリケーションの処理が実行されるにつれ、アプリケーションの内外との情報のやりとりで生じる大局的な状態の変化のことです。アプリケーションが並行処理を行うようなものであれば、個々の並行処理の単位

    Goのロギングライブラリ 2021年冬 - moriyoshiの日記
    castaneai
    castaneai 2021/12/15
    logr
  • Cameron's World

    Cameron's World is a web-collage of text and images excavated from the buried neighbourhoods of archived GeoCities pages (1994–2009). Graphics and text are from various GeoCities archives Collected and assembled by Cameron Askin Javascript/backend development by Anthony Hughes Music by Robin Hughes Archived pages served by the WayBack Machine GeoCities was a web-hosting service that made it possib

    Cameron's World
    castaneai
    castaneai 2021/12/14
    インターネット
  • Introduction to Ghostferry — Ghostferry 1.0.0 documentation

    castaneai
    castaneai 2021/12/13
    “Ghostferry is a library that enables you to copy data from one MySQL instance to another with minimal amount of downtime”
  • Table of Contents — An Introduction to libuv

    An Introduction to libuv Table of Contents Contents :: Introduction  » Table of Contents¶ Introduction Who this book is for Background Code Basics of libuv Event loops Hello World Error handling Handles and Requests Filesystem Reading/Writing files Filesystem operations Buffers and Streams File change events Networking TCP UDP Querying DNS Network interfaces Threads Core thread operations Synchron

  • .NET async/await in a single picture – TooSlowException

    10+ years of developer's live. Big .NET enthusiast, but looking with curiosity at other technologies. Currently working as independent consultant. In love with performance and architecture topics, such like scalability, performance troubleshooting, monitoring and testing. Passionate in blogging, tweeting and public speaking. Founder of Warsaw Web Performance group, first web performance-dedicated

  • Async Expert - online course about asynchronous programming in .NET

    While .NET environment was receiving another tools connected with concurrency and async programming, reception and feelings were mixed. On one hand the received opportunities were amazing. On the the other, it created the necessity to learn and use totally different elements of the language as well as mechanisms included in .NET itself... While training engineers during internal and opened trainin

    Async Expert - online course about asynchronous programming in .NET
    castaneai
    castaneai 2021/12/13
    .NETのasync/awaitについての詳しい解説教材
  • オタク論の死について

    コンテンツ 表紙 はじめに オタコラム オタクオタク道Ⅱ オタク道Ⅲ オタク論 ヒーローの条件 仮面ライダー 眼鏡っ娘論 お姉さん論 その他の萌え属性 ゲーム アニメと特撮 漫画 ノベル その他の話題 私家版オタク事典 私家版属性事典 私家版オタク人名録 管理者について 外部付属設備 Otaphysicablog 掲示板 サイト内検索 (by Google) コンタクト 制作・管理:エフヤマダ kanikamaboko80「☆」yahoo.co.jp *上記の「☆」をアットマークに変えてください。 十周年 このサイトを公開したのが2003年の12月12日、これはすなわち、先日十周年を迎えたということである。このような書きだしからは「十年も続くとは思わなかった」ともっていくのが自然な展開なのであろうが、実際はそうではなく、最初から、運悪く事故や病気で死んだりすることさえなければ十年くらい

    castaneai
    castaneai 2021/12/12
    “なんらかの居心地の悪さを抱いていた。その居心地の悪さが、オタクとはなにか、なんであるべきか、という問いを動機づけていた”
  • OTAPHYSICA

    コンテンツ 表紙 はじめに オタコラム 私家版オタク事典 私家版属性事典 私家版オタク人名録 管理者について 外部付属設備 Otaphysicablog 掲示板 サイト内検索 (by Google) コンタクト 制作・管理:エフヤマダ kanikamaboko80「☆」yahoo.co.jp *上記の「☆」をアットマークに変えてください。 表紙 このサイトについて ・「エフヤマダ」というオタク仕事の合間に慰みのために書いているオタク関連テキストの保管庫です。 ・中身はオタク論、萌え論、ヒーロー論、そして、オタクジャンル作品の評論、批評、感想など。 ・Mozilla Firefox ver.5.0で表示を確認しています。 ・トップは http://www.ne.jp/asahi/otaphysica/on/index.htm です。 ・リンクはご自由に。ただし、サイトの構成は予告なく変更さ

    castaneai
    castaneai 2021/12/12
  • Portable and interoperable async Rust

    A goal of the async foundations working group is for async Rust to be portable and interoperable. I want to dig in to what that means in this blog post. For a little background, see my earlier post on async runtimes. To run async Rust code, you need an async runtime. Currently however, choosing a runtime locks you into a subset of the ecosystem. Library crates and tools are often restricted to a s