Opbygning af OTP-applikationer og releases
Pak dine GenServers og supervisors i en rigtig OTP-applikation, og saml den i en release, der kan udrulles.
Opbygning af OTP-applikationer og releases er en gratis Erlang OTP: Programmering af distribuerede og fejltolerante systemer-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Erlang OTP: Programmering af distribuerede og fejltolerante systemer, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Erlang OTP: Programmering af distribuerede og fejltolerante systemer-kurset indeholder 4 lektioner i alt.
Hvad er en OTP-applikation?
En OTP-applikation er en genanvendelig komponent med en defineret livscyklus: Den starter, kører et overvågningstræ og stopper korrekt. Den er standardenheden til pakning i Erlang.
Ressourcefilen .app
Alle applikationer har en .app-fil, der beskriver deres metadata: navn, moduler, afhængigheder og det callback-modul, der starter applikationen.
{application, myapp,
[{description, "My App"},
{vsn, "1.0.0"},
{modules, [myapp_app, myapp_sup]},
{applications, [kernel, stdlib]},
{mod, {myapp_app, []}}]}.application-adfærden
Modulet, der er angivet i mod, implementerer application-adfærden med callback-funktionerne start/2 og stop/1.
-module(myapp_app).
-behaviour(application).
-export([start/2, stop/1]).start/2
start/2 kaldes, når applikationen starter. Den starter den øverste supervisor og returnerer dens pid.
start(_Type, _Args) ->
myapp_sup:start_link().stop/1
stop/1 kaldes ved nedlukning for at udføre oprydning. Ofte returnerer den blot ok.
stop(_State) ->
ok.Start og stop
Fra skallen kan du styre applikationer under kørsel.
application:start(myapp).
application:stop(myapp).Applikationsmiljø
Konfigurationen ligger i sektionen env i .app-filen og læses med application:get_env.
application:get_env(myapp, port).
% => {ok, 8080}Hvad er en release?
En release samler din applikation, dens afhængigheder og en begrænset Erlang-runtime i én selvstændig artefakt, der kan distribueres.
Bygning med rebar3
Byggeværktøjet rebar3 opretter releases ud fra en relx-konfiguration i rebar.config.
{relx, [{release, {myapp, "1.0.0"}, [myapp]},
{dev_mode, false},
{include_erts, true}]}.Kørsel af en release
Den genererede release indeholder scripts til at starte og stoppe noden samt oprette forbindelse til en konsol på den kørende node.
% rebar3 release
% _build/default/rel/myapp/bin/myapp foregroundHvorfor er releases vigtige?
Releases giver reproducerbare udrulninger: Den nøjagtige runtime, applikationsversioner og konfiguration følger med samlet, og de understøtter opgraderinger af kode under drift, som er et kendetegn ved Erlang-systemer.
Hurtig test
Test din viden om OTP-applikationer.
Opsummering
Du har lært at pakke OTP-kode.
.app-filen beskriver metadata og startmoduletapplication-adfærden levererstart/2ogstop/1- Releases samler applikation og runtime til reproducerbar udrulning
Lær Erlang med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 12
- Lektioner
- 48
Ofte stillede spørgsmål
Er lektionen “Opbygning af OTP-applikationer og releases” gratis?
Ja — alle 3 lektioner i læringssporet Erlang OTP: Programmering af distribuerede og fejltolerante systemer, inklusive “Opbygning af OTP-applikationer og releases”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Erlang OTP: Programmering af distribuerede og fejltolerante systemer-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “Opbygning af OTP-applikationer og releases”?
Pak dine GenServers og supervisors i en rigtig OTP-applikation, og saml den i en release, der kan udrulles. Du øver dig i Erlang OTP: Programmering af distribuerede og fejltolerante systemer med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på Erlang OTP: Programmering af distribuerede og fejltolerante systemer?
Der kræves ingen tidligere erfaring. Erlang OTP: Programmering af distribuerede og fejltolerante systemer på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.
Hvor lang tid tager lektionen “Opbygning af OTP-applikationer og releases”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne Erlang OTP: Programmering af distribuerede og fejltolerante systemer-lektion?
Ja. Alle Erlang OTP: Programmering af distribuerede og fejltolerante systemer-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Forståelse af OTP og behaviors
- Implementering af GenServer-behavior
- Introduktion til supervisors
- Opbygning af OTP-applikationer og releases