Forum Activity for @brian

brian
@brian
03/06/17 09:51:07AM
10,149 posts

Database table type


Installation and Configuration

Hi Dave -

Funny that you bring this up - this is something I've been actually working on on and off over the last couple months - basically migrating MyISAM tables to InnoDB. Our goal is to be 100% InnoDB, but it's not as simple as just switching table types, so don't do that.

The reason Jamroom uses MyISAM for some tables, is that for those tables we need to be able to get a very fast TOTAL row count from the table, which is something MyISAM supports by reading directly from the table meta data (since it keeps track of total row counts in it's meta data). This is something that InnoDB does not do (nor is really possible to do so in a table type that supports transactions), so we have to design an alternate "counter" mechanism that keeps track of counts in the table.

So a few things:

1) We're still using MyISAM tables - I'm not sure when that will change so we are 100% InnoDB. For now you need to stay on MyISAM for the tables that are MyISAM. Since I know this is affecting you, I will make this a bit higher priority than it has been (i.e. I've just been doing testing when I am working on something else related to the table). Our goal is to be able to run JR on Galera Cluster or MySQL NDB, which requires all tables to be InnoDB.

2) It's not always true that MyISAM uses more RAM - in fact it can be the opposite, since InnoDB stores a copy of it's Primary Key in all secondary indexes, which means it can use a larger amount of RAM than a similar MyISAM table.

3) While it's true that you can guarantee a snapshot of a InnoDB table, you can actually do the same with MyISAM by locking the table before your dump. However in practice I don't think you'll have any issues by not locking. mysqldump will always give you a "current" snapshot of the table - i.e. you're not going to get any partial entries, however any queries "in flight" may not be dumped if they have not committed. This is a problem in theory - in practice I've never seen an issue with this, and have managed hundreds and hundreds of MySQL servers. I'd recommend having your provider check out Percona's xTraBackup:

https://www.percona.com/software/mysql-database/percona-xtrabackup

It does "hot" dumps of InnoDB tables which nice.

So for now you'll need to stay with MyISAM, so hopefully that does not cause you too much issues. If it does and you need to consider alternate hosting let me know :)

Hope this helps!
brian
@brian
03/05/17 11:59:49AM
10,149 posts

Servers



It's the weekend - I have to get my stuff done lol. Going to lunch with my wife then I have to build "water" and "seaweed" set pieces for a school play. Fun :)
brian
@brian
03/05/17 11:57:06AM
10,149 posts

Servers



I'm just running out the door here - would love to hear about though - can you shoot me an email at brian@jamroom.net? That only comes in to me.

Thanks!
brian
@brian
03/05/17 11:45:46AM
10,149 posts

Servers



What are the specs you are going to need on your cluster? Do you already have a hosting provider you want to build it on?
brian
@brian
03/05/17 11:35:49AM
10,149 posts

Servers



I've preferred to use Nginx/PHP-FPM, but to be honest when I was speccing out our hosting back in 2014 it just wasn't up to the virtual hosting "ease" that Apache was, so we ended up going with Apache (and Apache's per directory .htaccess support is a bonus too).

Let me know the specs you're looking for on your new project - I'd like to host it if we can meet your needs :)

Have not done anything with Centmin - I just don't use any type of server control panel, since to be honest I don't like anything "taking over" config for me. I'm 100% comfortable at the CLI in Linux and prefer to admin the server directly. This gives me a much smaller server footprint and let's me avoid any weird config "surprises".

If I WAS going to do a CP though, I would certainly check it out based on your recommendation, which I appreciate.

Thanks!
brian
@brian
03/05/17 11:24:21AM
10,149 posts

Servers



jimmyk:
I can't seem to find any of the modules for expanding a JR site to multiple servers. Are those still available?

Was there a specific page with the details?

Thanks!

Hey Jimmy - I'm actually right in the middle of revamping Jamroom Cloud, so right now the existing Jamroom Cloud is in maintenance mode and only available for updates in a private channel.

I'm going to be releasing several new modules + updates to a bunch of modules that I can get your help on testing here in the next couple weeks.

The goal with Jamroom Cloud 2.0 is to make managing the system as easy as if you were running JR on a single server. Right now there are just too many "manual" parts that need fiddling with. We're in the process of creating a new Genosis product (Genosis online) that we need the full Jamroom Cloud setup for, so that has been the driver behind the updates. Note too that it is all based on MariaDB (master->master), Nginx/PHP-FPM front ends and Redis cache servers, which I think you will like. My initial testing on a very small 6 server cluster (all based on $5 VMs) is that it is VERY fast. I'm getting almost 400 requests per second from this little cluster so if you give it some real metal it will fly.

We also need the new Payment system in place as well, so that's being worked on as well.

So we'll have a BUNCH of new things here real shortly.

Thanks!
brian
@brian
02/19/17 09:56:50AM
10,149 posts

New Module - (Electronic Press Kit) - idea


Suggestions

Like Paul said - we had an EPK module for JR4 that was used very, very minimally - in this day and age when almost every artists has a WEBSITE, an EPK offers minimal value.
brian
@brian
02/19/17 09:55:58AM
10,149 posts

Loading External JS via Modules


Jamroom Developers

Just add whatever JS you need to your custom skin's meta.tpl file - that's the easiest way.

Hope this helps!
brian
@brian
02/16/17 11:55:26AM
10,149 posts

How to determine user age of 13 y.o.?


Design and Skin Customization

gary.moncrieff:
Wow I thought I was the only one concerned about the lack of privacy options in Jamroom, particularly for children/younger members.

There is no way to systematically verify or enforce age restrictions online, so not sure what is missing. Jamroom is already setup to work correctly:

1) Set your signup to "admin validated"
2) Have your members who signup send or fax you "proof" of their age
3) authorize their account if things line up

Anything else is just a game and can't be relied on.
updated by @brian: 02/16/17 11:55:55AM
brian
@brian
02/16/17 11:52:59AM
10,149 posts

any way to update core through ssh command line?


Using Jamroom

I'd recommend NOT doing that and instead find out why you have such a restricted network speed. However you can:

1) Download the latest open source here: https://www.jamroom.net
2) upload the modules/jrCore directory to your site
3) run an integrity
4) reset caches

Let me know if that helps.
  142