14


4

LinuxベースのWebサイトにMonoをC#またはPython(Django)と共に使用することを決定しようとしています。 C#に関する私の懸念は、Monoが.NETほど信頼できない可能性があることです。 誰かこれに関する経験がありますか?

5 Answer


13


私はLinux上でmono / c#を使っていろいろなことをしています - すべてのプロジェクトはWindowsマシン上でコンパイルされています。

私はサービス、ウェブサイト、コンソールアプリをやった、あなたはそれに名前を付ける。 あなたが本物の最悪の事をしているのでなければ、問題はないはずです。

私も問題なくlighttpd fastcgiモノラルを使用してサイトを実行しています。 大好きです


4


開発に利用できるリソース、およびユーザーベースの規模を考えると、MonoはWindows上の.NETより信頼性が低いと考えられます。 何が問題になっていますか。

http://tirania.org/blog/archive/2009/Nov-09.html[Miguel de Icazaによるこのブログ投稿]は、Monoを使うときに私に関係する問題の種類を説明しています。

しかし、MonoとPythonの比較はできません。


2


これはあなたがしていることによります。 非企業向けWebサイトを作成している場合は、etherを使用して問題ないはずです。 私はモノについて良いことを聞いたことがあります。 Monoを使用する際の問題は、MSに追いついていることと、複数のプラットフォームをサポートしなければならないことですが、MSはそうではありません。 私はデスクトップアプリケーションをモノラルで書いたことがありますが、ウェブサイトに関連したことをしたことは一度もありません。 C#とWindowsプラットフォームでは、最善の策はMSの実装です。 私の勧めはPythonを使うことでしょう。

私はDjangoのサポート性、信頼性などについて話すことはできませんが、Pythonはしばらく前から使われてきました。Linux/ Unix上でうまく動作することに関して長い実績があります。


2


個人的には、Linuxをターゲットにしているのであれば、C#(Mono)を使わないようにしましょう。

  • あなたの開発コミュニティはどんなプラットフォームの問題に対しても非常に小さいかもしれません。明らかに多くのC#開発者がいますが、Monoを使っている人は比較的少ないです^ 1 ^。

  • 私の経験では、SUSE ^ 2 ^を実行しない限り、Linux用Monoの最近のバージョンを発見することさえ多くの問題があります。

  • Monoにはあなたが望む機能があり、信頼性があるかもしれませんが(私はコメントできません。今でも1.xを使っています!)、頻繁に使用する場合は速度を調べたいと思うかもしれません。

  • より多くのマシンにデプロイする予定の場合(特にクローン作成できない場合)、これらははるかに問題になります。 1台のサーバーであれば、問題は多少少なくなります。^ 3 ^

  • Monoテクノロジをめぐる訴訟の脅威と、それが発生した場合にエンドユーザー(あなたとあなたのユーザー)に何が起こるのかについて懸念を抱いている人もいます。 私が読んだものから、私はあまり心配していませんが、私は弁護士ではありません。

がんばろう。

  1. 私は間違っているかもしれません。 Monoのダウンロード数は調べていませんが、それが上限です。

  2. Ubuntu Karmic(9.10)にはMono 2.4がありますが、_I_は1.9を持っていたJaunty(9.04)からアップグレードしたことを後悔しています。

  3. ソースからの構築は課税することができます。 そしてMono 2.Xバイナリ用の他のソースもありますが、見つけるのは簡単ではありません。


1


これは純粋な憶測かもしれませんが、これが私の経験です。 私はubuntuを使用していますし、モノラル(およびmonodevelop)は現在のバージョンから2年遅れで出荷されています。 もっと新しいものをコンパイルすることもできますが、それは苦痛です。 私は3つの趣味のプロジェクトでそれを使用しました、これが私の結論です:マイクロソフトの実装と比較するとそれはバグが多く、メモリリークがあり遅くなります。 たいていの場合、それはうまくいくでしょうが、あなたはあなたのソフトウェアにストレスをかけるべきであり、あなたは見るでしょう。 CをC#と同じくらいよく知っていることを願っています、それで私はLinuxでそれを使うことができます。 すべてvに適用されます。 2.10以下