並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 26 件 / 26件

新着順 人気順

seaserの検索結果1 - 26 件 / 26件

  • Log4jの深刻な脆弱性CVE-2021-44228についてまとめてみた - piyolog

    2021年12月10日、Javaベースのログ出力ライブラリ「Apache Log4j」の2.x系バージョン(以降はLog4j2と記載)で確認された深刻な脆弱性を修正したバージョンが公開されました。セキュリティ関係組織では過去話題になったHeartbleedやShellshockと同レベルの脆弱性とも評価しています。ここでは関連する情報をまとめます。 1.何が起きたの? Javaベースのログ出力ライブラリLog4j2で深刻な脆弱性(CVE-2021-44228)を修正したバージョンが公開された。その後も修正が不完全であったことなどを理由に2件の脆弱性が修正された。 広く利用されているライブラリであるため影響を受ける対象が多く存在するとみられ、攻撃が容易であることから2014年のHeartbleed、Shellshock以来の危険性があるとみる向きもあり、The Apache Software

      Log4jの深刻な脆弱性CVE-2021-44228についてまとめてみた - piyolog
    • 100万件ぐらいのレコードを扱ったらOOMEが出た話。 - 谷本 心 in せろ部屋

      要約 技術的な話だけ教えて、という方のために先に結論だけ書いておきますと、PostgreSQLはクエリを実行した時点で全レコードの情報を一気に読んできてヒープを埋めてしまう場合がある、ということ話です。 たとえば、ResultSet#nextメソッドを使いながら処理を回すようなコードを書いて、少ないヒープでも処理できるようにするのは常套手段だと思いますが、そういうコードを書いていても一気にヒープを消費してしまうことがあるのです。詳しくはこのドキュメントを見てください。 https://jdbc.postgresql.org/documentation/head/query.html#query-with-cursor ことの発端 ちょっと仕事でJava + jOOQ + PostgreSQLで、DBのデータを集計するようなバッチ処理を書いてまして、もちろん俺様の書いたコードにバグなんてある

        100万件ぐらいのレコードを扱ったらOOMEが出た話。 - 谷本 心 in せろ部屋
      • DI (依存性注入) って何のためにするのかわからない人向けに頑張って説明してみる - Qiita

        追記 2022/11/12 追記 この記事読んで、DI 便利だなって思ったらこちらも併せて読んでみてください。クリーンアーキテクチャーの開設の中で依存性逆転の説明が出てきます。難しいかもしれませんが、一度理解すればつぶしが効く考え方なので腰を据えて読んでみてください。 本文 ここでは、最近のそこそこの規模のアプリだと大体使われてる(と私は思ってる)Dependency Injection(DI)について、何故使ってるのか?というのを私の理解で書いていきたいと思います。 今回の対象言語は C# ですが、DI 使ってる言語であれば大体同じ事情なのかなと思います。 単体テストしたいよね アプリケーションを作るとうまく動いているかテストをすると思います。 たとえ、そのアプリがハローワールドだとしても動かして目視で確認してると思います。 もうちょっとアプリの規模が大きくなってくるとクラス単位やクラス

          DI (依存性注入) って何のためにするのかわからない人向けに頑張って説明してみる - Qiita
        • TOMCAT殺害事件 - Qiita

          OOMKillerの殺意 顧客EC2のTomcatがアクセスの無い早朝にもかかわらずOOMKillerに突然殺されてしまったので、調査した顛末をたぶん同じような問題に直面されている方もおられるかと思いますので備忘録として記載します。 Javaヒープのチューニングにも多少役立つかと思います。 (この記事はJava8が対象となります。) OOMKillerとはOut of Memory時に、サーバ全体を守るためにメモリーを消費しているプロセスを停止するLinuxの標準機能です。 そのOOMKillerになんとTomcatが突然殺害されてしまいました。 問答無用の辻斬り状態です。 早朝ですのでアクセスログには何も記録されておらず、catalina.outには OpenJDK 64-Bit Server VM warning: Setting LargePageSizeInBytes has no

            TOMCAT殺害事件 - Qiita
          • Google Best Practices for Java Libraries

            Google Best Practices for Java Libraries Google Best Practices for Java Libraries are rules that minimize problems for consumers of interconnected Java libraries. These practices come from decades of aggregated experience in maintaining open source Java libraries and are informed by many hard-learned lessons from mistakes that have been made. We have found that following these rules results in hig

            • 分散型金融システムのトラストチェーンにおける 技術リスクに関する研究 研究結果報告書

              • Javaがパブリックスタティックヴォイドメインの呪文から解放される - きしだのHatena

                みなさん、今日もパブリックスタティックヴォイドメインしてますか? ジャバと言えばパブリックスタティックヴォイドメインですよね。 最近はIDEでmain[tab]と入力すれば補完してくれるとはいえ、コードを読むときには目に入ってきたりしますね。 そんなパブリックスタティックヴォイドメインの呪文から解放される日が近づいています。 TL; DR 9月リリースのJava 21の試用機能として void main() { System.out.println("Hello"); } をhello.javaで保存したら、java hello.javaで実行できるようになります。 (Java 21では--enable-preview --source 21が必要) Javaではプログラムを開始するときにpublicなclassなどにStringの配列を受け取るpublicでs

                  Javaがパブリックスタティックヴォイドメインの呪文から解放される - きしだのHatena
                • Re: 空想のNFTと現実のNFT - Software Transactional Memo

                  前回の記事に長文で反論が付いていたので興味深く拝読した。 sasakill.substack.com 書いた人はSmartnews社のVice Presidentのようで、予想外のところまで記事がリーチしたのは少し驚いている。 メタバースはNFTの使い途の一部でしかなく、Web3によって完璧な非中央集権的な社会が実現するなんてこともない。 僕の記事では「メタバースにNFTは不要」と言ったのに「NFTにメタバースは不要」というような受け取られ方をしているあたりは少し気になるが、彼が論点に挙げたいのはメタバースでもWeb3でもなくNFT単体であるようだ。そのつもりで僕の意見をまとめる。 私の考えでは「ノーコストでコピーが可能」という議論の土台にそもそも穴がある。 繰り返すがコピーはやはりノーコストである。この記事の読者が自身のデバイスに僕の記事を表示させるまでのコピーに掛かった電気代・通信費の

                    Re: 空想のNFTと現実のNFT - Software Transactional Memo
                  • ジャバの異常な愛情 またはSpringはいかにしてモダンであることを止めて時代遅れになったのか - Qiita

                    Spring以前 RPC 業務で使うシステムはサーバー間で連携することが多い。2019年現在ではREST apiに対してjsonやprotocolbufferで呼び出す事が当たり前のように行われているが、まだjsonも発見されていない時代はもっと複雑な仕組みが取られていた1。異機種間でやりとりするためのCORBAや、機種に依存しないデータプロトコルのASN.1なども利用されていたが、仕様は複雑でそれぞれをハンドリングするライブラリは有償で売られ、ベンダーからサポートを受けながら使用するようなものだった。 RMI Javaの世界ではJava同士でやりとりするためのRMIが定義され、比較的に楽にRPCできるようになった2。とはいえhttpでrestをコールすることに比べたらアホみたいな複雑さである。 https://docs.oracle.com/javase/jp/1.3/guide/rmi

                      ジャバの異常な愛情 またはSpringはいかにしてモダンであることを止めて時代遅れになったのか - Qiita
                    • Javaのコンテナのメモリ割り当ての考え方をまきさんに教えていただいたので記録 - Mitsuyuki.Shiiba

                      何度か教えていただいているので、今度こそしっかり覚えておきたくて、まきさんからのコメントを記録。 ## メモリサイズの考え方 SpringBootのアプリをコンテナとして動かす場合には768MB以上必要で、1GBくらいは割り当てる必要があるのではないかという僕のコメントに対していただいたコメント。 それは不正確..Tomcatを使う場合は最大コネクション(スレッド)がデフォルト200で+50スレッドくらい余裕を見ると250M (-Xss1M)でデフォルトのReservervedCodeCacheSize 240MとDirectMemorySize 10M加えた上にMaxMetaSpaceSizeがざっくり50Mくらい足すと550Mくらい使ってこれHeapを足すとコンテナサイズ— Toshiaki Maki (@making) November 16, 2019 その前提であればHeap 2

                        Javaのコンテナのメモリ割り当ての考え方をまきさんに教えていただいたので記録 - Mitsuyuki.Shiiba
                      • Javaがサーバレスに至るまでの道のり

                        はじめに 先日、JakartaOne Live Japan 2022というイベントで登壇させていただく機会を頂きました。 QuarkusやHelidonのような新しめのEEフレームワークがこれまでのPayaraやWebLogicとどう違うのか? CloudRunのようなサーバレス環境でMicroProfileのどの機能が効果的に働くのか? という点を最近のWeb開発周りのトレンドと絡めながら話ました。上記のようにアーカイブ動画も公開されていますが、せっかくなのでQuarkusがサーバレス環境で実行に最適化されるまでの周辺事情等をまとめたいと思います。Javaだけに留まらず最近の環境事情の整理にも役立つかと思います。 TL;DR Quarkus/Helidonは軽量で高速な新しいEEフレームワーク コンテナや、サーバレス、クラウドネイティブなど最新のトレンドに基づいた設計 GCPのCloud

                          Javaがサーバレスに至るまでの道のり
                        • 「上司はムダな存在でしかない」と思っていたが…管理職を全廃したグーグルがたった1年で元に戻した理由 人は「完全に自由」になると不安になる

                          「Web3」は巨大企業の独占支配を変えられるのか 大手IT企業による「支配と隷従」に対抗しようという動きが、二〇二〇年代になって活発になってきた。それが「Web3(ウェブ3)」と呼ばれるムーブメントである。ウェブ3はインターネットがふたたび「支配と隷従」へと回帰してきていることに対して、「自由」へと揺り戻そうという思想を持っている。 ウェブ3について、できるだけわかりやすく説明していこう。ウェブ3は、ビットコインで有名な技術、ブロックチェーンを中心に考えられている新たなインターネットである。 ブロックチェーンというのは、ごく単純化して説明すると、「あらゆる取引が記録されている台帳」である。そしてこの台帳は、GAFAMのようなビッグテックが独占所有しているのではない。ビッグテックのサーバーに保存されているのではない。そうではなく、インターネットで相互につながった無数のコンピューターに、同時に

                            「上司はムダな存在でしかない」と思っていたが…管理職を全廃したグーグルがたった1年で元に戻した理由 人は「完全に自由」になると不安になる
                          • Javaのインストール2023年版 - きしだのHatena

                            ちょっとJavaのインストールについて調べてみました2023年版。 Javaにはディストリビューションがたくさんあるので、目につくインストーラーをWindowsで全部ためしてみました。 初心者が勉強するためにJavaをインストールするというときにどれを使うのが手軽か確認するというのが主な目的です。 Oracle JDK Temurin by Adoptium Amazon Corretto Azul Zulu Liberica JDK Microsoft Build of OpenJDK SapMachine OpenJDK SDKMAN! winget OpenJ9 / Semeru Runtime Red Hat Build of OpenJDK GraalVM Scoop いろいろあるので、結論を先に書いておくと次のようになります。 いまPATHの設定が必要なJDKインストーラはない

                              Javaのインストール2023年版 - きしだのHatena
                            • Java 20, 21, オブジェクト指向からデータ指向へ / Java20, 21, Object Oriented to Data Oriented

                              2023/5/10(水)に開催されたTechFeed Experts Night#18での登壇資料です。 https://techfeed.io/events/techfeed-experts-night-18

                                Java 20, 21, オブジェクト指向からデータ指向へ / Java20, 21, Object Oriented to Data Oriented
                              • JITとコードの暖気の実体 - #chiroito ’s blog

                                どうも、趣味でOpenJDKのコミッタをしてます。 とあるブログを読んでいたら気になる点があったので検証してみました。 JITと暖気 Javaプロセスはアプリケーションを動かしながら必要に応じてバックグラウンドでバイトコードをネイティブコードにコンパイルします。このコンパイル時にはCPUリソースを使用します。 コンパイルにはいくつかのレベルがありますが、コンパイルされる前やレベルの低いコンパイルのコードはCPUのリソース効率が悪かったり、アプリケーションの処理中にコンパイルが実行されるとCPUリソースを奪いあったりなどが問題になります。 そのため、Java のアプリケーションで性能を気にする要件がある場合、本番に近いリクエストを投げてコードをJITコンパイルする事があります。これをよく暖気と言います。これにより本番のリクエストが来る前にコードを最適化し、よりCPUリソース効率の高いコードで

                                  JITとコードの暖気の実体 - #chiroito ’s blog
                                • 今なら間に合う分散型IDとEntra Verified ID

                                  6/30のOffice365勉強会のEntra Verified ID特集の資料です。 分散型ID、Entra Verified IDの解説をしています。Read less

                                    今なら間に合う分散型IDとEntra Verified ID
                                  • WebAssemblyでOpenJDKのJavaランタイムを実装、JarファイルをそのままWebブラウザで実行できる「CheerpJ 3.0」正式リリース

                                    WebAssemblyでOpenJDKのJavaランタイムを実装、JarファイルをそのままWebブラウザで実行できる「CheerpJ 3.0」正式リリース Webブラウザ上で実行可能なWebAssembly製JavaVM 前バージョンのCheerpJは、Javaのバイトコードを事前コンパイルによりJavaScriptコードに変換することで、Webブラウザ上でJavaアプリケーションを実行可能にするコンパイラを中心とするツール群でした。 今回の新バージョン「CheerpJ 3.0」では、WebAssemblyによってOpenJDKのJavaランタイムを完全に実装したと説明されています。これにより、JITコンパイラなどを含むJavaVMの機能をWebブラウザ上で実行できるようになりました。 Javaアプリケーションのソースコードは不要で、ビルド済みのJarファイルをそのままWebブラウザで実行

                                      WebAssemblyでOpenJDKのJavaランタイムを実装、JarファイルをそのままWebブラウザで実行できる「CheerpJ 3.0」正式リリース
                                    • ソートできるUUID v7をJavaで使うときの話

                                      JJUG CCC 2024 Spring の発表資料です

                                        ソートできるUUID v7をJavaで使うときの話
                                      • デジタル庁のWeb3研究会、独自のDAO設立へ

                                        行政がDAOを設立へ デジタル庁は2日、第5回のWeb3.0研究会にて独自のDAO(分散型自律組織)を設立する方針を明らかにした。実際にDAOに参加することで「課題や可能性を認識」していく。 1時間半に及んだ会合では、Web3に関連する暗号資産(仮想通貨)、DeFi(分散 型金融)、NFT(非代替性トークン)、DAO(分散型自律組織)、メタバース(仮想現実)などのメリットとリスク、および問題点について議論。「Web3.0の未来像」をベースに、その実現に向けて現行制度に向き合い、どのように変えていくのかを検討するアプローチを取るべきとの提案があった。 特に、第一回から法的位置付けの不明確性が指摘されてきたDAOについては、実際に研究会のメンバーがDAOを設立することで調査と分析を実施。これにより、DAOに法人格を付与する法制措置の「便益と課題を検討」していく予定だ。 また、DAO具体的施策と

                                          デジタル庁のWeb3研究会、独自のDAO設立へ
                                        • 令和時代に「Spring入門」「Spring徹底入門」を読むとき気をつけるべきN個のこと - Qiita

                                          この記事について 事ある度に書いたり言ったりしている通り、2020年を迎えようとしている現在でも、信頼できるSpring関連書籍は下記の2冊しかありません。 Spring徹底入門 改訂新版Spring入門 2冊(以下「書籍」)とも超良書なのですが、どちらもリリースされたのが2016年で、対応しているSpringのバージョンが4.2と古くなっています。 2019年末時点での最新版はSpring 5.2です。この記事では、上記書籍を令和の今読む際、特に気をつけるべき点をいくつか紹介していきます。 4.x->5.xの差分すべてについては、GitHubのWikiを確認してください。 JDKは8以上を使うべし Spring 5.0以降から、JDKのベースラインが8になりました(Spring 4はJDK 6ベース)。今からSpringを使おうと言う人が、JDK 6とか7を使おうとはしないと思いますが・

                                            令和時代に「Spring入門」「Spring徹底入門」を読むとき気をつけるべきN個のこと - Qiita
                                          • 「分散型」のWeb3が分散ではなく“中央集権”を加速させてしまう理由 | スコット・ギャロウェイ「デジタル経済の先にあるもの」

                                            スコット・ギャロウェイ「デジタル経済の先にあるもの」 「分散型」のWeb3が分散ではなく“中央集権”を加速させてしまう理由 まさかTwitterを去りしジャックに、これほど感謝する日が来ようとは。進歩の鍵は「上流階級の裏切り者」が握っているものだ。軍産複合体に警鐘を鳴らす将軍しかり、嘘つきの経営陣を告発するプロダクトマネージャーしかり。そして、シリコンバレーの白人の掟──互いに批判せず、世界を救うという崇高な使命にケチをつけない──を破るテックリーダーもまたしかり。 ジャック・ドーシーは剣を抜き、支配力を結集して分散化の見込みから利益を得ようとたくらむ同業者に狙いを定めた。単刀直入にいうと、「Web3」に非難を浴びせたのだ。 あなたは「web3」の所有者にはなれない。 所有するのはベンチャーキャピタルと、彼らのリミテッドパートナーだ。彼らのインセンティブを逃れることは決してできない。Web

                                              「分散型」のWeb3が分散ではなく“中央集権”を加速させてしまう理由 | スコット・ギャロウェイ「デジタル経済の先にあるもの」
                                            • TypeScript の DI 手法あれこれ - Object.create(null)

                                              TypeScript で DI (依存性注入) するためのライブラリを作ったんですが, それを紹介する前に既存手法をまとめておいた方が説明が楽だなと思ったのでまとめておきます. そもそも DI の目的とは, みたいなところは詳しく説明しないのであしからず. 手法の比較 DI なし Service Locator エフェクト Constructor Injection Setter Injection デコレータ typed-inject 次回予告 手法の比較 DI なし まずは DI を使わない場合を見ていきましょう. ここでは例として, 以下のような時刻と乱数を必要とするコンポーネント MyService が, 時刻と乱数を扱う機能をそれぞれ提供するコンポーネント Clock と Random に依存するような場合を考えます. type Clock = { getTime: () =>

                                                TypeScript の DI 手法あれこれ - Object.create(null)
                                              • Spring Modulith でモジュラモノリスなアプリの構造を検証してみた - Taste of Tech Topics

                                                アクロクエスト アドベントカレンダー 12月9日 の記事です。 普段は Java, Python でバックエンドの開発をしている大塚優斗です😃 最近は Spring フレームワークのメジャーアップデートなどで盛り上がっていますね! 10月にこんな記事を見かけて、Spring Modulith がとても気になっていたので、手元で試したことを書いていきます✍️ Spring Modulith とは Spring Modulith でできること 0. Spring Modulith でのパッケージの扱いについて 1. モジュール構造の検証 循環参照の検知 別モジュールへのアクセス違反の検知 2. モジュールに閉じた結合テスト 単一のアプリケーションモジュールで結合テストができること Bootstrap モードによって、結合テスト時に他モジュールの Bean 生成ができること 3. イベントによ

                                                  Spring Modulith でモジュラモノリスなアプリの構造を検証してみた - Taste of Tech Topics
                                                • 【DAOとは何か徹底解説】私達は企業の労働者からDAOへの貢献者へ、メタバース時代の働き方はトークンエコノミーと共にある|shinichiro kinjo

                                                  web3に関してのトレンドを振り返ると、2020年はDeFi、2021年はNFTとクリプトゲームの年になりましたが、2022年はDAOがより大きく注目されると言われています。 This post English ver👇🏻 DAOは「Decentralized Autonomous Organization」の略であり、日本語では自律分散型組織と訳されます。それだけ聞いても「?」という感じですが(僕もそうでしたw)、簡単にいうと社長のいない会社のようなものです。 株主、経営陣、役員などのような管理者がいなくても、ミッション実現に向かってメンバーが自ら自律的に価値提供をして、事業を推し進めていく組織のことをDAOと言います(この組織(Organization)の部分はCommunityやCompanyとも言い換えることができDACと呼ばれることもあります)。 上司やリーダーいなくてもその

                                                    【DAOとは何か徹底解説】私達は企業の労働者からDAOへの貢献者へ、メタバース時代の働き方はトークンエコノミーと共にある|shinichiro kinjo
                                                  • ドメイン駆動設計を参考にしながらJava×SpringBootで家計管理アプリを自作 - Qiita

                                                    2-3. 使用技術 アプリケーション作成 Java 17.0.2 Spring Boot 3.0.3 Spring Security 6.0.5 JOOQ 3.17.8(ORマッパー) データベース MySQL 8.0.32 UI HTML(Thymeleaf) CSS(Bootstrap 5.0.2) JavaScript(Chart.js 4.3.0) インフラ Fly.io (https://fly.io/) PlanetScale (https://planetscale.com/) 3. 実装するにあたって意識したこと 実務未経験者が初めて作成するアプリなので、何も考えずに作るとコードが無秩序な状態に陥ってしまうのではないかと思い、何かしら方針を決めたいと考えました。以前、書籍『現場で役立つシステム設計の原則』を読んだ際に、保守や変更に強いソフトウェアを作るための設計思想に「ドメ

                                                      ドメイン駆動設計を参考にしながらJava×SpringBootで家計管理アプリを自作 - Qiita
                                                    • DAO:分散自立型組織の革命とその全貌に迫る|Go

                                                      DAOに限らず、様々なテック企業や業界の分析をしているメディアですので、ぜひ原文やThe Generalistを購読することをおすすめします。 著者のMario GabrieleさんのTwitter ↓ DAOs are absorbing the internet. This is true across dimensions: • Talent. Home for the internet's most gifted • Capital. Controlling billions in digital assets • Social capital. Where bright minds meet & collab • Culture. Defining cyber culture Gm, and let's begin 🧵 pic.twitter.com/5etEk4S5Y9 —

                                                        DAO:分散自立型組織の革命とその全貌に迫る|Go
                                                      1