Zainspirowany starą rozmową Hackera na temat tej strony zastanawiam się:
Czy Ubuntu i Mono mogą prowadzić witrynę ASP.NET MVC, taką jak Ask Ubuntu?
Zamiast tego strona skupia się na technologii. Czy możesz wymienić usługi IIS, ASP.NET, MVC itp. Na bezpłatne i otwarte technologie bez konieczności całkowitej przebudowy witryny?
Uwaga od Oli : Meta- dyskusja (czyli: czy Ask Ubuntu migruje do Ubuntu + Mono?) Została przeniesiona do osobnego pytania w meta części strony
Odpowiedzi:
Nie mam bazy kodu dla Ask Ubuntu, więc nie mogę naprawdę powiedzieć, czy jest coś szczególnie specyficznego dla platformy, co spowodowałoby blokowanie, ale w odpowiedzi na to, czy możesz go migrować , odpowiedź brzmi prawdopodobnie tak .
Należy pamiętać, że platforma, na której siedzą strony ASP.NET, to coś więcej niż magiczny plik binarny ASP.NET:
ASP.NET można w dużej mierze zastąpić Mono. Nie zawsze jest ładna, a wydajność nie zawsze jest świetna, ale można to zrobić.
ASP.NET MVC to silnik szablonowy. Zwykle znajduje się na ASP.NET, ale może działać na Mono z kilkoma zmianami.
Usługi IIS można usunąć dość prosto, umożliwiając niestandardowe programy obsługi działające na SO, zastępując je Apache (i in.).
Baza danych jest technicznie największą częścią całości. Oczywiście w prostych przypadkach, gdy używasz dobrego kodu. Rozerwij bazę danych i zastąp ją. W tym przypadku układ klastrowy serwerów MSSQL, które obsługują strony StackExchange, może być prawdopodobnie przeniesiony do MySQL (lub innych), ale prawdopodobnie wymagałby znacznej pracy, ponieważ prawdopodobnie kryje się spora część kodu specyficznego dla bazy danych, albo w bazie danych sama lub (mniej prawdopodobne) w samej witrynie. Większość bazowania na kodzie, specyficzne dla baz danych, flossowanie danych należy już do przeszłości, dzięki LINQ, który obsługuje Mono (także dla baz danych innych niż SQL Server).
To wcale nie jest ostateczna lista tego, co zostanie zastąpione, ale są to główne pozycje.
Czy chcesz ... To trudniejsze pytanie. Zanim przejrzysz kilkadziesiąt problemów, prawdopodobnie już jesteś w punkcie, w którym mógłbyś po prostu ponownie wdrożyć system w coś takiego jak Django. Oczywiście zależy to od złożoności systemu. Jest twardy jak kawałek sznurka.
źródło