.NET Core aplikace na Linuxu - stav v roce 2018? rubrika: Programování: .Net

3 DavidKloucek
položil/-a 25.7.2018

Zdravím,
už nějakou dobu tu je .NET Core a zajímalo by mě, jak moc se používá v praxi. Přijde mi, že na přednáškách a příkladech je všude prosazován kvůli své multiplatformnosti, ale ve skutečnosti ho skoro nikdo nepoužívá. Nebo snad znáte nějaký reálný projekt, který na něm běží?

Rád bych C# použil na další svoje webové/konzolové aplikace, ale výhradně mimo MS stack - takže trochu nezvykle .NET Core+Linux+MySQL/PostgreSQL. Je to dnes dobrá volba, nebo se radši podívat po jiné platformě?

odkaz
3 SebastianBusek
odpověděl/-a 27.7.2018

Ahoj,

s .NET Core jsem začali ve verzi 1 RC2, jde o WorkplaceHub (http://workplacehub.konicaminolta.com/cs/) kde kombinujeme .NET Core, Java a i NodeJS.
Nejvýraznější problém byl s podporou LXC kontejnerů v Ubuntu, museli jsme v aplikacích vypnout serverový režim pro garbage collection (což už naštěstí neplatí).
Jinak, není to .NET Framework, tak něco ve frameworku chybí (LDAP) a v těchto případech často pomáhá komunita - existuje port Novell knihovny.
Není to žádný zázrak, ale lepší než drátem do oka.
Generování obrázů byl taky problém a taky v .NET Core byla jen podpora WebSockets, takže pokud jsi chtěl obousměrné spojení serveru s klientem tak sis spojení musel udržovat sám, nebo sáhnou po něčem jiném.
Na oba problémy jsme použili Node (SocketIO a NodeGD), ale to už taky neplatí, existuje port Skia knihovna a stejně tak už vyšel SignalR.
Jako DB máme PostgreSQL, na začátku bylo NPGSQL relativně chybové, ale časem se vyladil a nedávno přidal i podporu NodaTime.

Kdybych to měl shrnout, tak za ty 2 a půl roku, tak to bylo... Vzrušující.
Ale tak to asi bývá vždy s každou novou technologii...
Něčím podobným jsme si prošli s Angular, jediné co je tak nějak v pohodě od začátku je snad jen Vue.

Pro zobrazení všech 3 odpovědí se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.