How can I improve my FMS performance?
Hi...
I have two FMS 3.5 streaming servers... Both have Windows Server 2003 x64 with 16 GB of RAM...
I'm streaming from a common storage and my Application.xml file is like this:
<Application>
<StreamManager>
<VirtualDirectory>
<!-- Specifies application specific virtual directory mapping for recorded streams. -->
<Streams>/;L:\media</Streams>
</VirtualDirectory>
</StreamManager>
<DisallowedProtocols>rtmp,rtmps,rtmpt</DisallowedProtocols>
<!-- Settings specific to runtime script engine memory -->
<JSEngine>
<!-- This specifies the max size (Kb.) the runtime can grow to before -->
<!-- garbage collection is performed. -->
<RuntimeSize>20480</RuntimeSize>
</JSEngine>
<Client>
<Bandwidth>
<!-- Specified in bytes/sec -->
<ServerToClient>2500000</ServerToClient>
<!-- Specified in bytes/sec -->
<ClientToServer>2500000</ClientToServer>
</Bandwidth>
<MsgQueue>
<Live>
<!-- Drop live audio if audio q exceeds time specified. time in milliseconds -->
<MaxAudioLatency>2000</MaxAudioLatency>
<!-- Default buffer length in millisecond for live audio and video queue. -->
<MinBufferTime>2000</MinBufferTime>
</Live>
<Recorded>
<!-- Default buffer length in millisecond for live audio and video, value cannot be set below this by Flash player. -->
<MinBufferTime>2000</MinBufferTime>
</Recorded>
<Server>
<!-- Ratio of the buffer length used by server side stream -->
<!-- to live buffer. The value is between 0 and 1. To -->
<!-- avoid break up of audio, the ratio should not be more -->
<!-- than 0.5 of the live buffer. -->
<BufferRatio>0.5</BufferRatio>
</Server>
</MsgQueue>
<!--OVERRIDE APPLICATION LEVEL-->
<!-- Specifies the RTMP chunk size to use in all streams for this -->
<!-- application. Stream content breaks into chunks of this size -->
<!-- in bytes. Larger values reduce CPU usage, but also commit to -->
<!-- larger writes that can delay other content on lower bandwidth -->
<!-- connections. This can have a minimum value of 128 (bytes) and -->
<!-- a maximum value of 65536 (bytes) with a default of 4096 bytes -->
<!-- Note that older clients may not support chunk sizes largee than -->
<!-- 1024 bytes. If the chunk setting is larger than these clients can -->
<!-- support, the chunk setting will be capped at 1024 bytes. -->
<OutChunkSize>3072</OutChunkSize>
<!--OVERRIDE APPLICATION LEVEL-->
<!-- An application can be configured to deliver aggregate messages to -->
<!-- clients that support them by setting the "enabled" attribute to "true". -->
<!-- The server will attempt to send aggregate messages to these supported -->
<!-- clients based whenever possible. -->
<!-- When this setting is disabled, aggregate messages will always be broken -->
<!-- up into individual messages before being delivered to clients. -->
<!-- The default is "true". -->
<AggregateMessages enabled="false"></AggregateMessages>
<!--OVERRIDE VHOST LEVEL-->
<AutoCloseIdleClients enable="true">
<CheckInterval>60</CheckInterval>
<MaxIdleTime>1200</MaxIdleTime>
</AutoCloseIdleClients>
</Client>
</Application>
The Server.xml and fms.ini have default settings.
My RAM usage is always low... 1,1 GB... and also my CPU usage is low. The FMSCore.exe process reaches 630 MB usage and then stays at this level.
How can I use my server's RAM or have you any tips or suggestions to improve FMS performance with some special settings?
I tried to change this in fms.ini:
SERVER.FLVCACHE_MAXSIZE=500
to 1000 but the application crashes after it reaches 2GB of RAM.
Thanks in advance
best,
Marco
