perl-modperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Fayland Lam <fayl...@gmail.com>
Subject share use vars?
Date Fri, 17 Jul 2009 03:37:16 GMT
see we are using Catalyst and it run under mod_perl2. we're planning to 
use Geo::IP in our Controller.
I'm wondering which code is better as following.

1)
use vars qw/$geo_ip/;
sub ip_to_location {
    my ( $ip ) = @_;
   
    $geo_ip ||= Geo::IP->open("/usr/local/share/GeoIP/GeoLiteCity.dat", 
GEOIP_STANDARD);
    my $record = $geo_ip->record_by_addr($ip);
    return unless $record;
    return ( $record->country_code, $record->city, 
$record->country_name, $record->region_name );
}

2)
use vars qw/$geo_ip/;
$geo_ip = Geo::IP->open("/usr/local/share/GeoIP/GeoLiteCity.dat", 
GEOIP_STANDARD);
sub ip_to_location {
    my ( $ip ) = @_;
   
    my $record = $geo_ip->record_by_addr($ip);
    return unless $record;
    return ( $record->country_code, $record->city, 
$record->country_name, $record->region_name );
}

I'm wondering in which way the $geo_ip is sharable through the threads.
we are using "server/mpm/prefork"

Thanks.

-- 
Fayland Lam // http://www.fayland.org/
Foorum based on Catalyst // http://www.foorumbbs.com/


Mime
View raw message