Skip to content
This repository
tag: 0.3.1
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

file 110 lines (87 sloc) 5.923 kb

Version 0.3.1

  • Adding push_stream_longpolling_connection_ttl directive to be possible use different values for timeout of stream and long polling subscribers on the same location
  • Adding push_stream_max_subscribers_per_channel directive to limit the number of subscribers per channel
  • Enabling some directives to be used on location context, now this works as expected
    • push_stream_ping_message_interval
    • push_stream_subscriber_connection_ttl
  • Replace ping and disconnect routines by individual timers in each request, it make disconnect timeout more accurate
  • Finalizing failed connections on sending messages or ping to subscribers, it prevent leak of writing connections using HTTPS
  • Fixing delivery message when etag from newer message is lower than an old message
  • Fixing cleanup messages when only use max_messages_stored_per_channel directive
  • Fixing bug on ping and disconnect timers behavior when working with long polling subscribers
  • Fixing bug on init and exit worker to execute module code only on SINGLE or WORKER process, to be possible use the module and proxy cache on the same nginx

Version 0.3.0

  • Adding Event Source support
  • Adding Polling support
  • Adding Long Polling support
  • Moving some directives to be used on http context instead of location
    • push_stream_min_message_buffer_timeout
    • push_stream_max_message_buffer_length
    • push_stream_max_channel_id_length
    • push_stream_ping_message_interval
    • push_stream_subscriber_connection_timeout
    • push_stream_broadcast_channel_prefix
    • push_stream_max_number_of_channels
    • push_stream_max_number_of_broadcast_channels
  • Renaming some directives
    • push_stream_max_reserved_memory → push_stream_shared_memory_size
    • push_stream_memory_cleanup_timeout → push_stream_shared_memory_cleanup_objects_ttl
    • push_stream_min_message_buffer_timeout → push_stream_message_ttl
    • push_stream_max_message_buffer_length → push_stream_max_messages_stored_per_channel
    • push_stream_subscriber_connection_timeout → push_stream_subscriber_connection_ttl

Version 0.2.7

  • Adding uptime information for server and workers on statistics
  • Avoiding counters to overlap on decrement

Version 0.2.6

  • Adding directive push_stream_footer_template to send a text to subscriber before close connection (channel delete or subscriber timeout)
  • Adding support to retrieve old messages using If-Modified-Since header
  • Fixing bug on some points which does not check if alloc memory was done successful
  • Fixing bug on PushStream.js to work on Internet Explorer 9

Version 0.2.5

  • Adding directives to change text for channel deleted and ping messages
  • Adding feature to get channels statistics by prefix (Suggested by Alexey Vdovin)
  • Adding publisher administrator feature to delete channels (Suggested by Alexey Vdovin)
  • Fixing bug which removed default message template
  • Fixing messages sent to subscribers to be a truly transfer encoding chunked connection
  • Removing support for versions 0.7.x
  • Removing hack to keep connection open (Thanks Maxim Dounin)

Version 0.2.4

  • Adding keepalive support
  • Fixing bug when reloading nginx configuration file (Thanks Rob Mueller for bug report)

Version 0.2.3

  • Fixing bug to accept different message templates on different subscriber locations (Now you CAN remove push_stream_message_template directive from publisher location, it will not be used there)
  • Fixing bug on publisher which let too many open connections with fast publishers on some nginx versions
  • Fixing bug of segfault when the module is part of nginx but not in use (Thanks Rob Mueller for bug report)
  • Fixing bug when store message is off, memory of messages was not free after sent to subscribers

Version 0.2.2

  • Fixing bug when apply message and channel name to template with values containing the same template pattern, could result in 100% of memory and CPU consumption, by recursion
  • Fixing bug when manipulating a channel which was removed from tree for another worker (the 100% CPU bug)
  • Fixing memory allocation for channel id
  • Fixing response for detailed channels statistics when have a big number of channels
  • Creating different timers to clear the memory, one for expired messages and another for empty channels
  • Disable Nginx chuncked filter for module locations

Version 0.2.1

  • Fixing bug on return for publisher, was rejecting the message for some clients
  • Fixing bug on allocation memory of ngx_str_t variables to ensure that has a char \0 at the end of each of them
  • Adding instruction to discard body, to release the connection as soon as possible
  • Adding license information
  • Organizing test suite

Version 0.2.0

  • Fixing bugs on release shared memory
  • Fixing bug on receive POST with empty message
  • Adding a different location to get channels statistics push_stream_channels_statistics
  • Adding new directives push_stream_max_number_of_channels, push_stream_max_number_of_broadcast_channels and push_stream_memory_cleanup_timeout
  • Removed support to PUT and DELETE http methods on publisher location
  • Removed different types of return on publishing messages in case that was published on a empty channel or on one which has subscribers
  • Removed directive push_stream_subscriber_disconnect_interval, this interval is calculate based on push_stream_subscriber_connection_timeout
  • Removed directive push_stream_min_message_buffer_length
  • Change default values of some directives
directive old value new value
push_stream_min_message_buffer_timeout 7200 seconds unset
push_stream_max_message_buffer_length 10 unset
push_stream_authorized_channels_only on off
push_stream_store_messages on off
push_stream_max_channel_id_length 1024 bytes unset
push_stream_broadcast_channel_max_qtd 1 unset

Version 0.1.0

Initial version of this module was based on pushmodule

Something went wrong with that request. Please try again.