[ excerpt from developer's web site with modifications ]
The goal is to build a system capable of supporting massive concurrency
(on the order of tens of thousands of simultaneous client connections)
and avoid the pitfalls which arise with traditional thread and
event-based approaches.
SEDA is an acronym for staged event-driven architecture, and
decomposes a complex, event-driven application into a set of stages
connected by queues. This design avoids the high overhead associated
with thread-based concurrency models, and decouples event and thread
scheduling from application logic. By performing admission control
on each event queue, the service can be well-conditioned to load,
preventing resources from being overcommitted when demand exceeds
service capacity. SEDA employs dynamic control to automatically
tune runtime parameters (such as the scheduling parameters of each
stage), as well as to manage load, for example, by performing
adaptive load shedding. Decomposing services into a set of stages
also enables modularity and code reuse, as well as the development
of debugging tools for complex event-driven applications.
===> The following configuration options are available for seda-3.0_7:
DOCS=on: Build and/or install documentation
===> Use 'make config' to modify these settings
net/seda: does not compile with jdk25 and deprecate
Error with jdk25:
[javac]
/wrkdirs/usr/ports/net/seda/work/seda-release-20020712/seda/src/seda/sandStorm/internal/ATTIC/AggTPSThreadManager.java:124:
error: cannot find symbol
[javac] tg.stop();
[javac] ^
[javac] symbol: method stop()
[javac] location: variable tg of type ThreadGroup
Note that the original author of the SEDA framework already
doubted some parts of it in a blog from 2010.
https://matt-welsh.blogspot.com/2010/07/retrospective-on-seda.html
PR: 293559
Approved-by: no maintainer
Mk/Uses/java.mk: Runtime fix with USES=java:ant
USES=java:ant does not imply USES=java:run so we need to add the run arg
seperately when we are using USES=java:ant. Not all ports require the
the argument so it is better to address the ports individually instead
of handling it automatically by implying run for ant.
Thanks to vvd for carefully going through this.
Reported by: vvd
Approved by: portmgr (blanket)
Mk/**java.mk: Convert bsd.java.mk to USES
The following features have been added or changed:
- Instead of USE_JAVA use USES=java. This defaults to
USES=java:build,run if NO_BUILD is undefined. Else it defaults to
USES=java:run
- Instead of USE_ANT=yes use USES=java:ant which also implies
USES=java:build
- Instead of JAVA_BUILD=yes use USES=java:build. Does not imply run or
extract
- Instead of JAVA_EXTRACT=yes use USES=java:extract does not imply
build or run
- Instead of JAVA_RUN=yes use USES=java:run does not imply extract or
build
- Instead of USE_JAVA=<version> use USES=java and JAVA_VERSION=<version>
Approved by: mat (portmgr), glewis
Differential Revision: https://reviews.freebsd.org/D48201
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
Clean up after java/openjdk6 and java/openjdk6-jre removal
java/openjdk6 support was removed from Mk/bsd.java.mk (r512662) and
java/openjdk6 and java/openjdk6-jre were removed from the ports tree
(r512663). Now this patch completely removes remaining stuff from the
ports tree.
PR: 241953 (exp-run)
Reviewed by: glewis
Approved by: portmgr (antoine)
Differential Revision: https://reviews.freebsd.org/D22342
Remove indefinite articles and trailing periods from COMMENT, plus minor
COMMENT typos and surrounding whitespace fixes. A few Makefiles where not
included as they contain Latin-1 characters that break the Phabricator
workflow. Category N.
CR: D307
Approved by: portmgr (bapt)
Convert all :U to :tu and :L to :tl
Since FreeBSD 8.4 and FreeBSD 9.1 make(1) do support :tu and :tl as a
replacement for :U and :L (which has been marked as deprecated)
bmake which is the default on FreeBSD 10+ only support by default
:tu/:tl a hack has been added at the time to support :U and :L to ease
migration. This hack is now not necessary anymore
Note that this makes the ports tree incompatible with make(1) from
FreeBSD 8.3 or earlier
With hat: portmgr
Now that the Java 1.3 and Java 1.4 ports are deprecated and will expire soon,
remove support for them from bsd.java.mk. As Jikes is not available in Java 1.5
or higher, remove it from bsd.java.mk too (suggested by hq@) and from the ports
which used it (only occurences were USE_JIKES=no). Support for the Blackdown VM
is also removed, as it is not available in Java 1.5 and higher.
Also remove the mapping from Java 1.1-1.4 to Java 1.5+ in bsd.java.mk to detect
old, broken ports; therefore bump the minimal value of JAVA_VERSION to 1.5.
While here, replace static values of JAVA_VERSION in files/*.in by
%%JAVA_VERSION%% .
PR: ports/158969
Submitted by: rene
Tested on: pointyhat-west -exp
For ports maintained by ports@FreeBSD.org, remove names and/or
e-mail addresses from the pkg-descr file that could reasonably
be mistaken for maintainer contact information in order to avoid
confusion on the part of users looking for support. As a pleasant
side effect this also avoids confusion and/or frustration for people
who are no longer maintaining those ports.
Bump portrevision due to upgrade of devel/gettext.
The affected ports are the ones with gettext as a run-dependency
according to ports/INDEX-7 (5007 of them) and the ones with USE_GETTEXT
in Makefile (29 of them).
PR: ports/124340
Submitted by: edwin@
Approved by: portmgr (pav)
o New port seda version 3.0: An Architecture for Highly Concurrent
Server Applications
o Use a custom made ant build.xml for building. Re-written with help
from [1] and originally written by Johnathan James (jjames at
haxwell dot org)
Reviewed by: jrandom [1]