Go to file
Justin Clark-Casey (justincc) 84cea46c10 Add experimental OutgoingQueueRefillEngine to handle queue refill processing on a controlled number of threads rather than the threadpool.
Disabled by default.  Currently can only be enabled with console "debug lludp oqre start" command, though this can be started and stopped whilst simulator is running.
When a connection requires packet queue refill processing (used to populate queues with entity updates, entity prop updates and image queue updates), this is done via Threadpool requests.
However, with a very high number of connections (e.g. 100 root + 300 child) a very large number of simultaneous requests may be causing performance issues.
This commit adds an experimental engine for processing these requests from a queue with a persistent thread instead.
Unlike inbound processing, there are no network requests in this processing that might hold the thread up for a long time.
Early implementation - currently only one thread which may (or may not) get overloaded with requests.  Added for testing purposes.
2014-08-19 00:17:12 +01:00
.nant minor: Rename BUILDING.txt to BUILDING.md in distbin distribution nant target 2013-01-04 22:13:21 +00:00
OpenSim Add experimental OutgoingQueueRefillEngine to handle queue refill processing on a controlled number of threads rather than the threadpool. 2014-08-19 00:17:12 +01:00
Prebuild Changed to Unix line-endings in VS2010Target.cs 2014-03-24 12:27:07 +01:00
ThirdParty/SmartThreadPool Fix SmartThreadPool line endings in recent update from dos to unix 2013-05-01 23:00:46 +01:00
ThirdPartyLicenses * Added a Basic DOS protection container/base object for the most common HTTP Server handlers. XMLRPC Handler, GenericHttpHandler and <Various>StreamHandler 2013-10-07 21:35:55 -05:00
addon-modules minor: slightly improve README for building addon-modules within the main OpenSim build 2010-01-11 15:47:01 +00:00
bin Added RestrictEmail to make llEmail only send to avatars email address if true. 2014-08-14 02:40:06 -04:00
doc updating config properties added during upgrade process, adding error log file to doxygen config, adding doxygen output directory & error log to .gitignore 2013-01-03 00:17:24 +00:00
share Remove out-of-date and unused xsd schemas 2012-12-31 22:14:50 +00:00
.gitignore Changed the default XBakes directory to a local path: "./bakes". 2014-07-21 09:27:47 +01:00
.hgignore additional patterns for .hgignore 2008-07-18 14:37:23 +00:00
BUILDING.md Add some info about xbuild command line switches to clean and select between producing Debug or Release binaries 2014-05-30 11:56:05 -04:00
CONTRIBUTORS.txt add Alicia Raven to Contributors list, thanks for the patch! 2014-06-04 22:04:09 -04:00
LICENSE.txt Last time? 2010-05-03 00:11:12 +01:00
Makefile making Makefile a bit more robust: can now cope with missing ruby in a 2009-09-03 18:32:41 +02:00
OpenSim.FxCop changed to native line ending encoding 2007-07-16 15:40:11 +00:00
README.md minor: remove the bit left in the readme which said .net 3.5 framework was required 2013-11-08 23:16:09 +00:00
TESTING.txt test again undoing previous changes 2014-02-04 00:32:40 -05:00
nant-color in case ruby is somewhere else in the path (just used for coloring output) 2009-09-03 15:00:53 -04:00
prebuild.xml Add 'server' stats information to pCampbot, as used elsewhere in OpenSimulator 2014-08-13 19:53:42 +01:00
runprebuild.bat Enable runprebuild.bat to run in Cygwin 2014-03-24 12:26:53 +01:00
runprebuild.sh Get runprebuild.sh to generate a vs2010 for xbuild to work with .NET 4 rather than vs2008 2013-11-13 00:25:41 +00:00

README.md

Welcome to OpenSim!

Overview

OpenSim is a BSD Licensed Open Source project to develop a functioning virtual worlds server platform capable of supporting multiple clients and servers in a heterogeneous grid structure. OpenSim is written in C#, and can run under Mono or the Microsoft .NET runtimes.

This is considered an alpha release. Some stuff works, a lot doesn't. If it breaks, you get to keep both pieces.

Compiling OpenSim

Please see BUILDING.md if you downloaded a source distribution and need to build OpenSim before running it.

Running OpenSim on Windows

You will need .NET 4.0 installed to run OpenSimulator.

We recommend that you run OpenSim from a command prompt on Windows in order to capture any errors.

To run OpenSim from a command prompt

  • cd to the bin/ directory where you unpacked OpenSim
  • run OpenSim.exe

Now see the "Configuring OpenSim" section

Running OpenSim on Linux

You will need Mono >= 2.10.8.1 to run OpenSimulator. On some Linux distributions you may need to install additional packages. See http://opensimulator.org/wiki/Dependencies for more information.

To run OpenSim, from the unpacked distribution type:

  • cd bin
  • mono OpenSim.exe

Now see the "Configuring OpenSim" section

Configuring OpenSim

When OpenSim starts for the first time, you will be prompted with a series of questions that look something like:

[09-17 03:54:40] DEFAULT REGION CONFIG: Simulator Name [OpenSim Test]:

For all the options except simulator name, you can safely hit enter to accept the default if you want to connect using a client on the same machine or over your local network.

You will then be asked "Do you wish to join an existing estate?". If you're starting OpenSim for the first time then answer no (which is the default) and provide an estate name.

Shortly afterwards, you will then be asked to enter an estate owner first name, last name, password and e-mail (which can be left blank). Do not forget these details, since initially only this account will be able to manage your region in-world. You can also use these details to perform your first login.

Once you are presented with a prompt that looks like:

Region (My region name) #

You have successfully started OpenSim.

If you want to create another user account to login rather than the estate account, then type "create user" on the OpenSim console and follow the prompts.

Helpful resources:

Connecting to your OpenSim

By default your sim will be available for login on port 9000. You can login by adding -loginuri http://127.0.0.1:9000 to the command that starts Second Life (e.g. in the Target: box of the client icon properties on Windows). You can also login using the network IP address of the machine running OpenSim (e.g. http://192.168.1.2:9000)

To login, use the avatar details that you gave for your estate ownership or the one you set up using the "create user" command.

Bug reports

In the very likely event of bugs biting you (err, your OpenSim) we encourage you to see whether the problem has already been reported on the OpenSim mantis system.

If your bug has already been reported, you might want to add to the bug description and supply additional information.

If your bug has not been reported yet, file a bug report ("opening a mantis"). Useful information to include:

  • description of what went wrong

  • stack trace

  • OpenSim.log (attach as file)

  • OpenSim.ini (attach as file)

  • if running under mono: run OpenSim.exe with the "--debug" flag:

    mono --debug OpenSim.exe
    

More Information on OpenSim

More extensive information on building, running, and configuring OpenSim, as well as how to report bugs, and participate in the OpenSim project can always be found at http://opensimulator.org.

Thanks for trying OpenSim, we hope it is a pleasant experience.