Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Sakai 22 Browser Support

Include Page
Sakai 22 Browser Support
Sakai 22 Browser Support

Operating system (OS) choices

Sakai can be installed on most OS's where the Java Virtual Machine is OS neutral. It is typically run on any of the numerous Linux distributions. Examples of common Linux distributions include Ubuntu, CentOS, Fedora, Gentoo Linux, Red Hat Enterprise Linux (RHEL), and SuSe Linux. Sakai can also run on macOS, Microsoft Windows, and Sun Solaris. Operating systems other than Linux are not nearly as well tested, and all of the community QA servers are running Linux, so this is generally the recommendation.

Java 8

Sakai 20 has been tested with Oracle's Java 8 and OpenJDK 8. Sakai requires JDK 8 to build all code.  Certain files, such as *.jsp, require access-time compilation so attempting to use only the run-time environment (e.g. JRE 8.0) will not suffice. Sakai was QA tested with OpenJDK 8. 

Application server choices

Apache Tomcat 9 is the recommended, and most thoroughly tested servlet container, and is most often used behind a load balancer like Apache Httpd or Nginx. Sakai was QA tested with Tomcat 9.0.40.supported.

Linux is the recommended OS because it is where Sakai is most commonly installed and therefore has the most exposure.

Other notable operating systems include macOS, Microsoft Windows.

Notably all of the community's QA servers are running Linux.

Java 11

Sakai 22 is built with Java 11.

This is the first release to be using Java 11 however we are still using Java 8 Language syntax to maintain portability with Sakai 21 which uses Java 8.

While it is possible to run Sakai with different JDK's it is recommended to run with Java 11 the QA servers are using Adoptium's Temurin JDK (formerly AdoptOpen) as this is what was tested by the Sakai QA team.

Java Virtual Machine options have changed vastly from those of Java 8, for example the low pause Concurrent Mark Sweep (CMS) garbage collector is no longer available in Java 11 so choosing a new garbage collector is important. Currently the most logical choice is the Shenandoah garbage collector as it is in the mainline OpenJDK since Java 11.0.9.

Application Server (Servlet Container)

While there are a number of Servlet Containers to choose from Apache Tomcat has been Sakai's long time default container.

Apache Tomcat 9 is the recommended version to use or Sakai 22. (Given that Tomcat 10 supports the JakartaEE spec we don't recommend this version for Sakai 22 as Sakai is still using the JavaEE spec) 

HTTP Proxy

It is very common practice to add an http proxy to forward requests from the clients browser to the application server. This allows for a number things like handling SSL, load balancing, request manipulation, logging, and adds support for security measures/practices.

This is probably the one piece of that stack where it is recommended to use the http proxy your most comfortable with, the only requirement is support for sticky sessions.

If your not sure which to use here are some honorable mentions: nginx, Apache httpd, HAProxy

Database choices

Sakai production installations typically run MySql 5.6+ or MariaDB 10.1+. Oracle is the next most popular choice, Oracle 12c.  

Database support details

Clustering, file storage and load balancing strategies

...