Hello a pau!
He kaiāulu mākou o nā mea hoʻomohala .NET ma Raiffeisenbank a makemake mākou e kamaʻilio e pili ana i kahi pūʻulu o nā hale waihona puke e pili ana i ka .NET Core no ka hana wikiwiki ʻana i nā microservices me kahi kaiaola hoʻokahi. Lawe lākou iā Open Source!
He wahi moʻolelo
I kekahi manawa ua loaʻa iā mākou kahi papahana monolithic nui, i hoʻololi liʻiliʻi i kahi pūʻulu microservices (hiki iā ʻoe ke heluhelu e pili ana i nā hiʻohiʻona o kēia kaʻina hana ma
Ua hala ka manawa, ua ʻāpana liʻiliʻi ka pāhana, a aia ka makemake e hana i nā modula ʻaoʻao o nā mea kūʻai aku ma kahi hoʻolālā JS hou a holo iā lākou i ka polokalamu kele pūnaewele. Ua hoʻomaka mākou e neʻe mai WCF/SOAP a i REST/HTTP, no laila pono mākou i nā hale waihona puke hou e hoʻomaka koke i nā lawelawe ma luna o AspNet WebApi. ʻO ka mana mua ma ka .Net Framework 4.5 i hana ʻia e kā mākou mea hoʻolālā kokoke i kona mau kuli i kona manawa kūʻokoʻa, akā ma waho o ka pahu i hiki ai ke hoʻomaka i kahi lawelawe me nā laina ʻekolu ma Program.cs i loaʻa ka mana (NTLM), logging, Swagger, IoC/DI ma muli o Castle Windsor, nā mea kūʻai HTTP maʻamau e hoʻouna i nā poʻomanaʻo like ʻole e hāʻawi i ka hoʻopaʻa inoa hope-a-hope ma ka papahana holoʻokoʻa. A hiki ke hoʻonohonoho pololei ʻia kēia mea āpau i ka faila hoʻonohonoho lawelawe.
Akā naʻe, ʻaʻole i maʻalahi nā mea a pau: ua lilo kēia waihona i mea paʻakikī loa e pili ana i ka hoʻokomo ʻana i nā modula hou. No ka laʻana, inā pono ʻoe e hoʻohui i kekahi middleware kūikawā, pono ʻoe e hana i kahi hui hou a hoʻoilina mai ka papa kumu e holo nei i ka lawelawe, he mea paʻakikī loa. ʻO ka mea pōmaikaʻi, ʻaʻole nui loa nā hihia like.
ʻO ke au o Docker a me Kubernetes
Ua hiki mai ka manawa i hiki mai ai ka nalu o Docker a me Kubernetes iā mākou, a mākou i nānā pono ai: ma hope o nā mea a pau, he manawa kūpono ia e hoʻomaka ai e neʻe hou aku ma nā ʻenehana, ma .Net Core. ʻO ia ke ʻano e pono ai mākou i kahi ʻōnaehana hou e holo ai i nā lawelawe: ua neʻe kekahi mau hale waihona puke mai ka .Net Framework i ka .Net Standard a me ka .Net Core me ka ʻole o nā loli, ʻo kekahi me nā hoʻomaikaʻi liʻiliʻi. Akā ʻo ka hapa nui o nā mea āpau aʻu i makemake ai e hana hou i ka hana e pili ana i ka hoʻolaha ʻana i nā lawelawe ma AspNet Core.
ʻO ka mea mua a mākou i noʻonoʻo ai he manaʻo e hoʻoneʻe i ka drawback nui o ka mana mua: nele o ka maʻalahi. No laila, ua hoʻoholo ʻia e hana i ka ʻōnaehana waihona holoʻokoʻa e like me ke kūʻokoʻa a me ka modular e like me ka hiki a hōʻiliʻili i nā lawelawe e pono ai no ka hana ma ke ʻano he mea kūkulu.
ʻO ka pahuhopu nui ka hoʻokumu ʻana i kahi ala hui e wehewehe ana i ke ʻano o ka launa pū ʻana me nā ʻikepili, nā kaʻa a me nā lawelawe ʻē aʻe. Ua hoʻāʻo mākou e hoʻohui wikiwiki a me ka ʻeha ʻole, a hiki i nā mea hoʻomohala ke noʻonoʻo i ke kākau ʻana i ka loiloi ʻoihana ma mua o ka ʻoihana - ua mākaukau. ʻO kahi waihona maʻamau e kōkua i ka hoʻomaikaʻi ʻana i ka ʻike o ka launa pū ʻana i loko o nā hui: ke hoʻohana ʻia nā ʻōnaehana kūloko like loa, ʻoi aku ka maʻalahi o ke komo ʻana i ke kaʻina hana hoʻomohala o kahi hui ʻē aʻe a hoʻololi i ka ʻike.
A no ke aha mākou e pono ai i Open Source?
Makemake mākou e hōʻike i ke ʻano o ko mākou akamai a loaʻa i nā manaʻo manaʻo kiʻekiʻe: hiki i kahi kanaka ma waho o ka panakō ke lawe mai i kekahi mea no lākou iho. Makemake pū mākou i ka hoʻomohala ʻana i nā hana no ka hana ʻana me nā microservices a me DDD ma .NET ma ka ʻoihana, makemake paha kekahi e lawe i kekahi mau ʻāpana o ka framework.
ʻOiaʻiʻo, ʻo ViennaNET
I kēia manawa, e nānā pono kākou.
ViennaNET.WebApi.*
Aia kēia pūʻulu hale waihona puke i ka ViennaNET.WebApi "aʻa", aia ka papa hana hale no ka lawelawe CompanyHostBuilder, a me kahi hoʻonohonoho o nā configurators ViennaNET.WebApi.Configurators.*, kēlā me kēia mea e hiki ai iā ʻoe ke hoʻohui a hoʻonohonoho i kekahi mau hana i ka mea i hana ʻia. lawelawe. Ma waena o nā configurators hiki iā ʻoe ke ʻike i nā pilina no ka logging, diagnostics, authentication and authorization type, swagger, etc.
ʻO ViennaNET.WebApi.Runners.* loaʻa pū kekahi i nā mea kūkulu lawelawe i hoʻonohonoho mua ʻia. Hāʻawi kēia mau pūʻolo iā ʻoe ʻaʻole e hoʻomanaʻo i kēlā me kēia manawa āu e hana ai i kahi lawelawe hou e pono ai nā configurators e hoʻopili. Eia naʻe, ʻaʻole lākou e kaupalena i ka hana o ka mea hana lawelawe ma kekahi ʻano.
ViennaNET.Mediator.*
Nā hale waihona puke e ʻae iā ʻoe e hana i kahi kaʻa kaʻa waena no nā kauoha a me nā noi i loko o kahi lawelawe. ʻO kēia ala e hiki ai iā ʻoe ke hōʻemi i ka helu o DI injections i hoʻokahi, no ka laʻana, i nā mea hoʻokele. Ma muli o kēia, hiki iā ʻoe ke hoʻohui i nā mea hoʻonaninani like ʻole i nā noi, e hoʻohui i kā lākou hana a hōʻemi i ka nui o ke code.
ViennaNET.Validation
He hui i loaʻa i nā papa no ka hana ʻana i nā lula hōʻoia a me nā kaʻina mai ia mau mea. He mea maʻalahi loa ia no ka hoʻokō ʻana i ka hōʻoia domain, no ka mea hiki iā ʻoe ke wehewehe i kēlā me kēia kūlana ʻoihana ma ke ʻano o kahi lula maʻalahi a kaʻawale.
ViennaNET.Redis
He hale waihona puke me nā ʻōpala no ka hana maʻalahi me Redis ma ke ʻano he huna huna.
ViennaNET.Specifications
He hui i loaʻa nā papa e hoʻokō i ke ʻano kikoʻī.
ʻAʻole kēia wale nō i loko o kā mākou hoʻonohonoho. Hiki iā ʻoe ke ʻike i ke koena
Mahalo iā ʻoe no kou nānā ʻana, ke kakali nei mākou i kāu mau ʻōlelo a me nā noi huki.
Source: www.habr.com