BababooeyHTJ
Supreme [H]ardness
- Joined
- Jan 21, 2009
- Messages
- 6,951
I hate firefox, I really don't know what people see in it. I don't use it very often but when I do it never fails to remind be why I use Opera. I'll even take IE over firefox.
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
I hate firefox, I really don't know what people see in it.
You don't need to dumb it down for me as I already understand it.Nightly builds != STABLE RELEASE!!!
I know about 64bit FireFox, and it seems fast because now it can allocate more than 2GB Ram for its own process, which is a 32bit limitation. The other problems remain do, like a single tab being able to crash all the other ones, or if someone is deviant enough, they can create a PHP script that when loaded can snoop on the other threads.
Let me dumb it down one more time: a process is a bundle of threads which share the same memory pool (same buffer). Each tab is run o a thread. Threads don't have their own memory, and a single process is ran on a single core (because of the memory sharing for the threads). So FireFox can take advantage of HyperThreading, but not of multiple cores.
Mozilla will fix this performance limitation and security, the question is how long we'll have to wait. In the meantime, for the rest of us who aren't so ignorant there are at least a couple of alternatives like Opera or Chrome.
I set Chrome as my default browser for a week last month, and the equivalent add-ons or built-in features for blocking ads or scripts are nowhere as fully fledged and usable as Addblocker Plus and NoScript for Firefox. I had to revert back to Firefox because web browsing became more like watching ads on TV on some sites, even with these add-ons. OK, I'm exaggerating a bit, but you get the drill.
Firefox runs perfectly fine on my computers, fast with no crash, and I even disabled the sandboxing plugin-container.exe. It actually has a lower memory footprint than Chrome, a much lower one in version 8, maybe precisely because of the shared memory. Although I'm pretty sure sharing memory is not an attribute of monoprocess apps: If you ever counted, there are more Chrome threads than tabs, so some of these threads must be dedicated to shared browsing features, like the HTML engine and so forth.
Yesterday I actually changed my default browser to Firefox 64-bit (Chrome has no working 64-bit browser), it's a version 11 beta and pretty stable from all I could throw at it (Flash, simultaneous downloads, normal browsing). It even got all my add-ons, so it looks like they're already available in 64-bit or Mozilla implemented some sort of 32-64-bit interface because they're working fine. I wish I could say the same for Windows Media Player, for which even Microsoft add-ons such as Live Messenger are not available in 64-bit flavor.
Now I'm sure Firefox also has its weak points, but for my usage, it's really the best browsing experience I have encountered so far. And I have also tried Safari and Opera, still use them from time to time to debug some web pages.
It was proven faster, by at least 10% according to some article from a few months ago.
That couldn't be farther from the truth, Intel Hyperthreading was introduced around the same time as the Core Duo processors, precisely so that monoprocess apps could easily be optimized on multiple cores. It didn't lead to a flurry of apps switching to multiprocess architecture. You can see Firefox spike on several cores in Windows Task Manager. It would have been called Dualthreading if it was based on the number of possible threads per core. I hope we'll get more than 2 threads per core on desktop CPUs eventually.
about time. havent used FF in over 4 years. Strictly Chrome and IE.
I hate firefox, I really don't know what people see in it. I don't use it very often but when I do it never fails to remind be why I use Opera. I'll even take IE over firefox.
Tell us what you hate about it. Saying I hate something with no reasons why is such BS.
Like monopolies, huh?
I was commenting on your statement in context. You said that "Nightly builds != STABLE RELEASE!!!", I am merely saying that even though alpha or beta builds are by definition not the final release, they seem quite stable (as in "not crashing" to me), let alone the crashes, running slow, or running "like shit" that you mentioned and that I never experienced. It's really not nearly as bad. If there's any bad at all.If you're going to comment on my statements, then please don't take them out of context.
Well I created my first IT company at 22 in 1986, so I beat you right there if you want to go this way... ^-^Been around computers and software development since 1991, and that's a long time in IT history.
Hyperthreading mechanism will take care of that for him.[/B] On a multi core (multi CPU) system, either the OS scheduler takes care of how threads are allocated, or the application can override that. Of course, with FireFox the per core or per CPU allocation of threads is left up to the OS, so naturally, the Windows scheduler for example tends to run one process per core (or per CPU) at any given time, and with that, all threads that belong to that process, on the same core (or CPU). When this happens, a you can all probably see how this can be a security concern. For this reason Google for example made Chrome a multi process browser from the ground up.
.
I was commenting on your statement in context. You said that "Nightly builds != STABLE RELEASE!!!", I am merely saying that even though alpha or beta builds are by definition not the final release, they seem quite stable (as in "not crashing" to me), let alone the crashes, running slow, or running "like shit" that you mentioned and that I never experienced. It's really not nearly as bad. If there's any bad at all.
Well I created my first IT company at 22 in 1986, so I beat you right there if you want to go this way... ^-^
No need to cite Wikipedia, I lived hyperthreading, re-read wiki last night and I am a contributor.
All I know is that Firefox does work on multiple cores.
I am pretty sure Mozilla would also start on a multiprocess architecture if they were starting from scratch now, but they inherited the Netscape source code from the 90s, long before the days of multicore and hyperthreading. They'll get there eventually, once all apps and games run in the cloud by default.
What fucking monopoly? There are quite a few browsers, all of which are more reliable than firefox. Firefox is going to go to shit without Google's money thats for damn sure.
I made a conscious decision to use IE9. Maybe it's the word fragmentation that scares me. I don't like the idea of different brands/titles/whatever running in my PC. I prefer sticking with one, and a sprinkle of other brands.
How many people who use Chrome actually made a conscious decision to do so? It pulls every borderline-malware tactic to install itself onto people's computers these days. How much crap is it bundled with?
The thing that is significant about firefox is that the people who use it aren't generally just using whatever browser that came on their computer (IE) or some browser they got tricked into installing (Chrome) but a browser that they actually decided to seek out because they wanted a better alternative.
Also, while Nginx is really nice, it's performance advantage is kind of negated when used in conjunction with PHP-FPM, because PHP-FPM will eat up allot of memory as it makes a copy of itself in the server's RAM every time there is a request. I guess that most seasoned veterans will stick with Apache MPM Worker (and soon many will adopt MPM Event) and mod_fcgid for PHP. Plus, it's easier to work with multiple versions of PHP when used with mod_fcgid. If you have any other questions, please let me know.
FF isn't perfect but it doesn't have conflicting interest like IE & Chrome does. it's a browser designed with the users interest at heart. can't say that for MS & Google's software.
PHP-FPM doesn't eat much ram at all. I have mine respawn after 500 requests with 5 workers. It uses about 50 MB of ram for PHP. BTW Apache is a damn memory hog compared to Nginx. Nginx with 2 worker processes uses about 10MB of ram.
With mod_fcgid, you are still using the PHP daemon the same way, except it isn't as well managed as fpm. My nginx setup connects to php-fpm through FCGI, the difference is the manager is using apache's memory instead of PHP.
How much memory did you allocate to PHP and how much to APC (assuming that you're using APC because it's probably the most stable caching module right now) ?
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 15 0 8356 604 572 S 0 0.1 0:03.40 init
1296 root 18 0 169m 1872 1240 S 0 0.4 0:51.54 php5-fpm
1370 root 18 0 3952 440 436 S 0 0.1 0:00.00 mysqld_safe
1490 mysql 15 0 188m 6968 2976 S 0 1.3 5:31.63 mysqld
1491 root 18 0 3852 516 512 S 0 0.1 0:00.00 logger
1620 root 18 0 56880 1316 1204 S 0 0.3 0:00.00 nginx
1621 www-data 15 0 58056 1772 924 S 0 0.3 0:15.70 nginx
1787 Debian-e 15 0 44144 620 556 S 0 0.1 0:00.59 exim4
1812 root 15 0 19328 728 672 S 0 0.1 0:06.14 xinetd
29964 www-data 15 0 178m 36m 26m S 0 7.1 0:02.62 php5-fpm
30002 www-data 16 0 187m 41m 23m S 0 8.2 0:01.33 php5-fpm
30010 www-data 15 0 177m 29m 19m S 0 5.7 0:01.45 php5-fpm
30033 root 15 0 23084 1296 996 R 0 0.2 0:00.03 dropbear
APC is using the PHP process right now, I have bothered figuring out how much memory it uses.
Note the below info is from OpenVZ which counts it's ram a bit higher than normal virt tech.
Here is the output for a webserver sitting online for about a month:
Code:PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 15 0 8356 604 572 S 0 0.1 0:03.40 init 1296 root 18 0 169m 1872 1240 S 0 0.4 0:51.54 php5-fpm 1370 root 18 0 3952 440 436 S 0 0.1 0:00.00 mysqld_safe 1490 mysql 15 0 188m 6968 2976 S 0 1.3 5:31.63 mysqld 1491 root 18 0 3852 516 512 S 0 0.1 0:00.00 logger 1620 root 18 0 56880 1316 1204 S 0 0.3 0:00.00 nginx 1621 www-data 15 0 58056 1772 924 S 0 0.3 0:15.70 nginx 1787 Debian-e 15 0 44144 620 556 S 0 0.1 0:00.59 exim4 1812 root 15 0 19328 728 672 S 0 0.1 0:06.14 xinetd 29964 www-data 15 0 178m 36m 26m S 0 7.1 0:02.62 php5-fpm 30002 www-data 16 0 187m 41m 23m S 0 8.2 0:01.33 php5-fpm 30010 www-data 15 0 177m 29m 19m S 0 5.7 0:01.45 php5-fpm 30033 root 15 0 23084 1296 996 R 0 0.2 0:00.03 dropbear
Nice I have probably misconfigured PHP-FPM so that it was eating up allot of RAM, so I will have to give it another try. Been around Apache and its way of doing things for far too long.
By the way, I have installed Waterfox x64 ( http://waterfoxproj.sourceforge.net/ ) which is FireFox stable compiled for 64-bit, and man does it run circles around FireFox 32 bit. No crashes, no slow downs, and amazingly with tons of tabs and widows open it eats up *shrug* only *shrug* 800MB Ram. It's still allot for any web browser, but at least it works damn well.
; Choose how the process manager will control the number of child processes.
; Possible Values:
; static - a fixed number (pm.max_children) of child processes;
; dynamic - the number of child processes are set dynamically based on the
; following directives:
; pm.max_children - the maximum number of children that can
; be alive at the same time.
; pm.start_servers - the number of children created on startup.
; pm.min_spare_servers - the minimum number of children in 'idle'
; state (waiting to process). If the number
; of 'idle' processes is less than this
; number then some children will be created.
; pm.max_spare_servers - the maximum number of children in 'idle'
; state (waiting to process). If the number
; of 'idle' processes is greater than this
; number then some children will be killed.
; Note: This value is mandatory.
pm = dynamic
; The number of child processes to be created when pm is set to 'static' and the
; maximum number of child processes to be created when pm is set to 'dynamic'.
; This value sets the limit on the number of simultaneous requests that will be
; served. Equivalent to the ApacheMaxClients directive with mpm_prefork.
; Equivalent to the PHP_FCGI_CHILDREN environment variable in the original PHP
; CGI.
; Note: Used when pm is set to either 'static' or 'dynamic'
; Note: This value is mandatory.
pm.max_children = 5
; The number of child processes created on startup.
; Note: Used only when pm is set to 'dynamic'
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2
pm.start_servers = 2
; The desired minimum number of idle server processes.
; Note: Used only when pm is set to 'dynamic'
; Note: Mandatory when pm is set to 'dynamic'
pm.min_spare_servers = 2
; The desired maximum number of idle server processes.
; Note: Used only when pm is set to 'dynamic'
; Note: Mandatory when pm is set to 'dynamic'
pm.max_spare_servers = 3
; The number of requests each child process should execute before respawning.
; This can be useful to work around memory leaks in 3rd party libraries. For
; endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
; Default Value: 0
pm.max_requests = 500
; The URI to view the FPM status page. If this value is not set, no URI will be
; recognized as a status page. By default, the status page shows the following
; information:
; accepted conn - the number of request accepted by the pool;
; pool - the name of the pool;
; process manager - static or dynamic;
; idle processes - the number of idle processes;
; active processes - the number of active processes;
; total processes - the number of idle + active processes.
; max children reached - number of times, the process limit has been reached,
; when pm tries to start more children (works only for
; pm 'dynamic')
How many people who use Chrome actually made a conscious decision to do so? It pulls every borderline-malware tactic to install itself onto people's computers these days. How much crap is it bundled with?
I hope you're trolling. Oh dear god please be a troll.
For firefox, use show my windows and tabs from last time. After that, check the box that says don't load tabs until selected
Meant to say haven't instead of have.
My PHP config:
Code:; Choose how the process manager will control the number of child processes. ; Possible Values: ; static - a fixed number (pm.max_children) of child processes; ; dynamic - the number of child processes are set dynamically based on the ; following directives: ; pm.max_children - the maximum number of children that can ; be alive at the same time. ; pm.start_servers - the number of children created on startup. ; pm.min_spare_servers - the minimum number of children in 'idle' ; state (waiting to process). If the number ; of 'idle' processes is less than this ; number then some children will be created. ; pm.max_spare_servers - the maximum number of children in 'idle' ; state (waiting to process). If the number ; of 'idle' processes is greater than this ; number then some children will be killed. ; Note: This value is mandatory. pm = dynamic ; The number of child processes to be created when pm is set to 'static' and the ; maximum number of child processes to be created when pm is set to 'dynamic'. ; This value sets the limit on the number of simultaneous requests that will be ; served. Equivalent to the ApacheMaxClients directive with mpm_prefork. ; Equivalent to the PHP_FCGI_CHILDREN environment variable in the original PHP ; CGI. ; Note: Used when pm is set to either 'static' or 'dynamic' ; Note: This value is mandatory. pm.max_children = 5 ; The number of child processes created on startup. ; Note: Used only when pm is set to 'dynamic' ; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2 pm.start_servers = 2 ; The desired minimum number of idle server processes. ; Note: Used only when pm is set to 'dynamic' ; Note: Mandatory when pm is set to 'dynamic' pm.min_spare_servers = 2 ; The desired maximum number of idle server processes. ; Note: Used only when pm is set to 'dynamic' ; Note: Mandatory when pm is set to 'dynamic' pm.max_spare_servers = 3 ; The number of requests each child process should execute before respawning. ; This can be useful to work around memory leaks in 3rd party libraries. For ; endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS. ; Default Value: 0 pm.max_requests = 500 ; The URI to view the FPM status page. If this value is not set, no URI will be ; recognized as a status page. By default, the status page shows the following ; information: ; accepted conn - the number of request accepted by the pool; ; pool - the name of the pool; ; process manager - static or dynamic; ; idle processes - the number of idle processes; ; active processes - the number of active processes; ; total processes - the number of idle + active processes. ; max children reached - number of times, the process limit has been reached, ; when pm tries to start more children (works only for ; pm 'dynamic')
why would it be a troll? IE8/9 w/o question are extremely good browsers. At this point it would only be a matter of preference between chrome/ie9 rather than any other reason.
The usual ending is "And more importantly, **** me!" ^-^
Yes I agree I have only used nginx for a reverse-proxy or to plainly serve lots of files.Also, while Nginx is really nice, it's performance advantage is kind of negated when used in conjunction with PHP-FPM, because PHP-FPM will eat up allot of memory as it makes a copy of itself in the server's RAM every time there is a request. I guess that most seasoned veterans will stick with Apache MPM Worker (and soon many will adopt MPM Event) and mod_fcgid for PHP. Plus, it's easier to work with multiple versions of PHP when used with mod_fcgid. If you have any other questions, please let me know.
about time. havent used FF in over 4 years. Strictly Chrome and IE.