JetBrainsのProjectorのCPU使用率が高い

その他

毎朝、仕事を始める前にJetBrainsのToolbox Appをみてバージョンアップが無いか確認することが習慣になっている。

JetBrains Toolbox App:ツールを簡単に管理
あらゆるIDEのあらゆるプロジェクトをワンクリックで開くことができます。

とある日、確認しているとJetBrains GatewayがEAPでダウンロードできるようになっていた。

Remote development | IntelliJ IDEA

sshや謎接続でリモートのコードを修正できるものらしいが、ドキュメント通りにsshの設定をしても動かなかった。気になったので、JetBrains + リモート開発で検索していると、JetBrains Projectorを見つけた。

JetBrains Projector: Run JetBrains IDEs and Swing apps remotely over the network.
Projector is a self-hosted technology that runs JetBrains IDEs and Swing apps on the server, allowing you to access them anywhere using browsers and native apps...

これを使うとサーバなどにJetBrainsのIDEをインストールでき、webブラウザや専用のアプリでリモートからコードを修正できるようになる。試しに、DockerにProjectorをインストールしてみると動いた(注意:起動時に9999ポートを開放する)。

FROM centos:8

RUN dnf install python3 python3-pip python3-pyOpenSSL python3-cryptography -y
RUN python3 -m pip install -U pip --user
RUN yum install less libXext libXrender libXtst libXi freetype -y
RUN pip3 install projector-installer --user
RUN pip3 install projector-installer --upgrade --user
RUN /root/.local/bin/projector --accept-license autoinstall --config-name IntelliJ --ide-name "IntelliJ IDEA Community Edition 2020.3.4"
CMD ["/root/.local/bin/projector", "run", "IntelliJ"]

webブラウザで localhost:9999 にアクセスするとIntellijが起動した。IDEの画面がブラウザにフィットしないことがあるが、webブラウザの大きさを変えてやるとフィットした。ライセンスが必要なIDEは、JetBrainsアカウントでライセンスチェックはできなかったが、JetBrainsアカウントでライセンスをダウンロードしてコピペするとライセンスチェックをパスできた。

ただ、最新のIDEをインストールすると、何もしてなくてもjavaプロセスが常時CPUを100%使うのが難点。次のリンクで解決方法が提案されていたが、自分の環境では解決しなかった。

https://youtrack.jetbrains.com/issue/PRJ-651

対話モードでインストールすると、テスト済みのIDEを確認できるので、テスト済みのIDEをインストールしてみる。

[root@a8b5a04d4e6f /]# /root/.local/bin/projector install --expert --no-auto-run 
           1. Idea_Community
           2. Idea_Ultimate
           3. PyCharm_Community
           4. PyCharm_Professional
           5. CLion
           6. GoLand
           7. DataGrip
           8. PhpStorm
           9. WebStorm
          10. RubyMine
          11. Rider
          12. DataSpell
          13. MPS
Choose IDE type or 0 to exit: [0-13]: 1
Do you want to select from Projector-tested IDE only? [y/N]y
[--------------------------------------------------]    0%
           1. IntelliJ IDEA Community Edition 2019.3
           2. IntelliJ IDEA Community Edition 2019.3.4
           3. IntelliJ IDEA Community Edition 2020.1
           4. IntelliJ IDEA Community Edition 2020.1.1
           5. IntelliJ IDEA Community Edition 2020.2
           6. IntelliJ IDEA Community Edition 2020.2
           7. IntelliJ IDEA Community Edition 2020.3
           8. IntelliJ IDEA Community Edition 2020.3.2
           9. IntelliJ IDEA Community Edition 2020.3.4
Choose IDE number to install or 0 to exit: [0-9]: 9

結果はCPU使用率は10%程度になった。メインの使い方としてはシンクライアントだと思うので、大体の用途では問題ないと思う。

ただ、個人的にはDockerにIDEを入れることで、mac + Docker volume mountが重い問題を解決したかったので、何も操作していない時にCPUを使って欲しくないので、利用はしないことにした。

コメント