Ver a proveniência

修复新用户进来首包加载size出错问题

old
smallchi há 5 anos
ascendente
cometimento
608f0869b2
3 ficheiros alterados com 24 adições e 2 eliminações
  1. +4
    -0
      src/JT1078.DotNetty.TestHosting/Configs/nlog.unix.config
  2. +20
    -2
      src/JT1078.DotNetty.TestHosting/JT1078WSFlv/JT1078WSFlvHostedService.cs
  3. BIN
      src/JT1078.DotNetty.TestHosting/dll/JT1078.Flv.dll

+ 4
- 0
src/JT1078.DotNetty.TestHosting/Configs/nlog.unix.config Ver ficheiro

@@ -20,6 +20,9 @@
<target name="all" xsi:type="File"
fileName="${Directory}/all/${shortdate}.log"
layout="${date:format=yyyyMMddHHmmss} ${callsite} ${level}:${message} ${onexception:${exception:format=tostring} ${newline} ${stacktrace} ${newline}"/>
<target name="flvencoding" xsi:type="File"
fileName="${Directory}/flvencoding/${shortdate}.log"
layout="${date:format=yyyyMMddHHmmss}:${message}"/>
<target name="JT1078TcpMessageHandlers" xsi:type="File"
fileName="${Directory}/JT1078TcpMessageHandlers/${shortdate}.log"
layout="${date:format=yyyyMMddHHmmss},${message}"/>
@@ -41,6 +44,7 @@
</targets>
<rules>
<logger name="*" minlevel="Error" maxlevel="Fatal" writeTo="all"/>
<logger name="FlvEncoding" minlevel="Debug" maxlevel="Fatal" writeTo="flvencoding"/>
<logger name="JT1078.DotNetty.Tcp.Handlers.JT1078TcpConnectionHandler" minlevel="Debug" maxlevel="Fatal" writeTo="JT1078TcpConnectionHandler,console"/>
<logger name="JT1078TcpMessageHandlers" minlevel="Debug" maxlevel="Fatal" writeTo="JT1078TcpMessageHandlers"/>
<logger name="JT1078TcpMessageHandlersHex" minlevel="Debug" maxlevel="Fatal" writeTo="JT1078TcpMessageHandlersHex"/>


+ 20
- 2
src/JT1078.DotNetty.TestHosting/JT1078WSFlv/JT1078WSFlvHostedService.cs Ver ficheiro

@@ -35,12 +35,14 @@ namespace JT1078.DotNetty.TestHosting
private readonly JT1078WSFlvDataService jT1078WSFlvDataService;
private readonly FlvEncoder FlvEncoder = new FlvEncoder();
private readonly ILogger logger;
private readonly ILogger flvEncodingLogger;
public JT1078WSFlvHostedService(
ILoggerFactory loggerFactory,
JT1078WSFlvDataService jT1078WSFlvDataServic,
JT1078HttpSessionManager jT1078HttpSessionManager)
{
logger = loggerFactory.CreateLogger("JT1078WSFlvHostedService");
flvEncodingLogger = loggerFactory.CreateLogger("FlvEncoding");
this.jT1078WSFlvDataService = jT1078WSFlvDataServic;
this.jT1078HttpSessionManager = jT1078HttpSessionManager;
}
@@ -51,9 +53,18 @@ namespace JT1078.DotNetty.TestHosting
{
try
{
Stopwatch stopwatch = new Stopwatch();
foreach (var item in jT1078WSFlvDataService.JT1078Packages.GetConsumingEnumerable())
{
stopwatch.Start();
var flv3 = FlvEncoder.CreateFlvFrame(item);
stopwatch.Stop();
if(flvEncodingLogger.IsEnabled(LogLevel.Debug))
{
long times = stopwatch.ElapsedMilliseconds;
flvEncodingLogger.LogDebug($"flv encoding {times.ToString()}ms");
}
stopwatch.Reset();
if (flv3 == null) continue;
if (jT1078HttpSessionManager.GetAll().Count() > 0)
{
@@ -63,9 +74,16 @@ namespace JT1078.DotNetty.TestHosting
{
exists.TryAdd(session.Channel.Id.AsShortText(), 0);
string key = item.GetKey();
session.SendBinaryWebSocketAsync(FlvEncoder.GetFirstFlvFrame(key, flv3));
//ws-flv
//session.SendBinaryWebSocketAsync(FlvEncoder.GetFirstFlvFrame(key, flv3));
//http-flv
session.SendHttpFirstChunkAsync(FlvEncoder.GetFirstFlvFrame(key, flv3));
continue;
}
session.SendBinaryWebSocketAsync(flv3);
//ws-flv
//session.SendBinaryWebSocketAsync(flv3);
//http-flv
session.SendHttpOtherChunkAsync(flv3);
}
}
}


BIN
src/JT1078.DotNetty.TestHosting/dll/JT1078.Flv.dll Ver ficheiro


Carregando…
Cancelar
Guardar