GNU/Linux >> Znalost Linux >  >> Linux

Máte nějaké zkušenosti s Javou na Raspberry PI?

Je to naprosto možné, ale mělo by to fungovat lépe s novějšími verzemi, které mají více paměti (např. 512 MB verze Pi). V prosinci 2012 Oracle vydal Developer Preview Java SE 8 pro ARM. Blogový příspěvek s oznámením obsahuje odkazy na řadu výukových programů, které by vám měly pomoci začít s obyčejnou Java SE nebo JavaFX, v závislosti na tom, jak elegantní by vaše rozhraní měla být.

  1. Rychlý průvodce spuštěním Java Embedded na Raspberry Pi
  2. JavaFX na Raspberry Pi – 3 snadné kroky

Pokud vás znepokojuje výkon JavaFX na Raspberry Pi, podívejte se na blogový příspěvek „JavaFX na Raspberry PI“, který obsahuje některé informace o výkonu JavaFX v porovnání s nativními aplikacemi.

Aktualizace:Výsledky testu po spuštění Tomcat 7 s Java 8 na Pi
Poté, co jsem získal 512mb verzi Pi (MODELL B), jsem bez problémů nainstaloval Java 8 a Tomcat 7.0. Příklady Tomcat fungovaly a já jsem mohl bez problémů používat aplikaci Tomcat manager.

Se 64 MB RAM použité pro grafickou kartu jsem měl stále 291 MB volné paměti (se spuštěným sshd):

[email protected] ~/ $ free -m
             total       used       free     shared    buffers     cached
Mem:           438        146        291          0         10         74
-/+ buffers/cache:         60        377
Swap:           99          0         99

pmap oznámilo, že proces Tomcat využívá celkem 192 MB.


Raspberry Pi má pro celý JVM k dispozici pouze 185 MB. (po spuštění, s 16 MB na zpracování videa).

Pak musíte použít agresivní a přesné možnosti paměti (-Xmx120M -XX:MaxPermSize=55M -XX:ReservedCodeCacheSize=4M -Djava.awt.headless=true )

Vytvořil jsem aplikaci založenou na Jetty, Spring 3 a Hibernate/JPA. Těsně po nasazení se vešlo asi 15 MB prostoru na haldě a 32 MB prostoru bez haldy (pomocí analýzy paměti JProfiler)

Každá načtená třída je trvale ztracena v paměti, protože prostor PermGen nelze shromažďovat. Mnoho tříd je načteno pouze pro podporu inicializace, ale zůstane načteno navždy. Možná se najdou tweeky, které spotřebují méně místa PermGen pro každou komponentu.


Linux
  1. Využití paměti Linuxu

  2. Limit paměti PHP

  3. Co je ioremap()

  1. Využití virtuální paměti z Javy pod Linuxem, příliš mnoho paměti

  2. Mono na Raspberry Pi

  3. Rostoucí využití rezidentní paměti (RSS) Java Process

  1. Jaký je nejlepší způsob, jak zvládnout stav nedostatku paměti v Javě?

  2. Linux – Existuje nějaký způsob, jak zjistit rychlost vaší paměti pomocí softwaru?

  3. Je X11 nebezpečný?